MVC restructure

Entire project is essentially being re-factored into a nice model view
controller paradigm following style.