Enhancements
- **Storage Improvements:**
- Removed default `.txt` extension for storage. Now, files can be stored without automatically appending the `.txt` extension.
- Implemented `storage.copy` function.
- Added default value support in `storage.read_json` for better error handling.
- Introduced `storage.file_link(fn)` for printing file links to console.
- Added `backup_existing` option to file storage functions, which is now used by default when `rewrite_existing` is set to `True`.
- Implemented `storage.exists()` to check for file existence and renamed `storage.storage_path` to `storage.path` for clarity.
- **Configuration and Parsing:**
- Added a new `config()` function and renamed the config module to `configuration` for better semantics.
- Enhanced `utils.parse` with validation capabilities.
- **Code Quality:**
- Added tests to cover new functionality and ensure reliability.
- **Prompt Functionality:**
- Introduced a prompt function that accepts jinja2 template as string and template variables as additional arguments/
Bug Fixes
- Resolved issue 6 related to parsing JSON markdown wrapper.