Follow-up from PR #37 review:
- Catalog persistence: Ensure the catalog can read from a saved state and come back up after a restart.
- Separate repository: Explore moving the IcebergCatalog trait and its implementations into a standalone crate/repository so it can be shared as a dependency across other projects in this space.
Refs: #36