Refactoring and User View

* Moved factories to single files
* Started wrapping Data access into injectable components
* Started work on user view