Separate routes and models

Closes #76
Closes #80
Merge pull request #80 from KenanY/overhaul

[WIP] Model and route overhaul