Implement basic views

This is the basis of how things will work.

TODO: styling
TODO: unittests