Added generic repo, refactored Dtos