Moving files for better organisation of code

Split the models (domain objects), services and repository so that they
are in their own assembly. For better practices.