Restructured AppFactory to avoid Circular Dependency problem and multiple Presenter creations.  Now one of every view/presenter is create, maintained and reused. This fixes a lot of quirky behaviour.