Added a user repo and sorted some stuff
Separated some stuff into view models