- Implement `METARService` to fetch METAR data from the CheckWX API.
- Add `requests` dependency to `pyproject.toml`.
- Update `Application` to initialize and use `METARService`.
- Enhanced `RichInterface` with interactive prompts for API key and user preferences (e.g., speed, temperature, visibility, and pressure units).
- Added input validation to ensure correct configuration values.
- Integrated parent `Application` reference for seamless configuration updates.
- Improved error handling to enforce configuration setup before application execution.
- Added `is_configured` flag in `Application` to track configuration state.
- Updated `RichInterface` to support multiple modes (`configure`, `detailed`, etc.) using structured logic.
- Integrated TUI run modes and refined display messages.
- Fixed minor imports and style inconsistencies in `RichInterface`.
- Introduced `RichInterface` to support Textual User Interface (TUI) functionality.
- Enhanced `Application` class to initialize and configure TUI based on arguments.
- Added `ui` module with a base `UIInterface` and `RichInterface` implementation.
- Updated argument parsing logic to handle TUI-specific options.
- Introduced `DirectoryManager` to handle configuration directory creation.
- Added `ConfigManager` with singleton design to manage config reading.
- Expanded argument validation in `Application` to refine error checks.
- Updated dependencies to include `rich`, `tomli`, and `tomli_w`.
- Adjusted setup logic to prompt users about missing configurations.