Starting refactor

Trying to reorganize the code into a more understandable structure -
trying to group every component of the views into a View object.