Extreme refactoring. Crashes on overlay show.

Methods for showing/hiding overlay elements on the fly need to be written.
Invalidate root view to force a complete redraw.
Merge pull request #401 from jorgesilva/issue-395

Fixes #395. Should also fix #396, fix #394, fix #393, fix #392
Merge pull request #400 from robertfoss/develop

Issue #318: Invalidate root view to force a complete redraw.
Fixes several architectural issues and inconsistencies