Added controllers
Finished most of the model layer