Rework the views

Implement more of the views. Make components, which are then assembled
together to create each page.