Voice Memo Manager

Key Features:
Storage Engines:
Filesystem Engine: Supports nested directories, .info.json files for titles, and automatic audio/subtitle file discovery
SQLite Engine: Relational database with collections hierarchy and full memo metadata
Pluggable Architecture: Easy to switch between engines via configuration
ExtJS 2.1 Compatibility:
TreeLoader endpoint (/api/collections) - Returns hierarchical collection structure
JsonStore endpoint (/api/memos) - Returns memo records with proper ExtJS format
PUT endpoint (/api/memos/<id>) - Handles JsonStore commits for updates
Subtitle Support:
VTT to SRT conversion with proper timestamp formatting
SRT to VTT conversion (reverse direction implemented)
Automatic subtitle detection for both .vtt and .srt files
Migration System:
Bidirectional migration between SQLite and filesystem
Preserves all metadata including bookmarks, titles, and collection structure
Robust error handling with detailed logging