Refactor architecture layers
- Refactored code to reduce redundancies and fix inconsistencies
- Introduced new base class for services with shared CRUD logic for entities
- Moved domain logic from persistence to service layer
- Moved caching from persistence to service layer
- Resolved cross-repository dependencies