Clean up
Add comments, move view() and model() to their own modules