Refactor database interaction for scrobbles, tracks, albums, and artists in DuckDB and Postgres repositories
- Implemented `save_scrobble` function in DuckDB to handle scrobble records, including user, album, artist, and track relations.
- Refactored `save_track` function in DuckDB to insert or update track records.
- Removed unnecessary `ScrobbleRepo`, `TrackRepo`, and `UserRepo` structs in DuckDB and replaced them with direct function implementations.
- Updated `Repo` trait to include async methods for inserting albums, artists, scrobbles, tracks, and users.
- Created `sync_scrobbles` function for synchronizing scrobbles from Postgres to DuckDB.
- Added new types for handling records: `ScrobbleRecord`, `ArtistRecord`, `AlbumRecord`, and `SongRecord`.
- Enhanced error handling and logging throughout the database operations.
- Updated command line interface to include a sync command for scrobbles.