Presenter/Controller structure
Various improvements to basic structure