Refactored the download_files function in cli.py to separate single file and folder download logic into helper functions, improving readability and maintainability.
Implemented file and folder download functionality in the CLI and GofileClient, including new CLI arguments for downloading by URL or content ID and specifying output directory.
Refactored the CLI to modularize argument parsing, logging, and output, and improved error handling and progress reporting. The client now uses dataclasses for file metadata, introduces custom exception classes, and provides a more robust upload interface supporting both file paths and file-like objects. Utilities were updated for clarity and type safety.
Revise README with improved installation and usage instructions, add development section, and simplify Python usage example. Bump version to 1.1.2, add optional 'dev' dependencies (pylint) in pyproject.toml, and introduce a minimal test.py script for upload testing.