Controller - View approach

Closes #2 
Closes #10
Glorious.