- moved models for bar into separate package
- moving Repository interface from services package into repositories package
- remove redundant (imho) granularity in repositories
- giving meaningful naming to interfaces (eg. Repository -> BarRepository, service -> fooInteractor etc.)
- return Interface instead of struct, so we are weakly coupled in each layer