Apply template methods to CachedViewCB's Activatable methods

... and remove empty lifecycle methods in view classes
Remove unnecessary calls to super() in view classes
Remove null checks in CachedViewCB activation methods

... as model can never be null
Introduce Activatable#NOOP_INSTANCE

... and use it instead of CachedViewCB#EMPTY_MODEL
Declare (Cached)ViewCB classes abstract
Rename *ViewCB => *View
Rename CachedView => ActivatableView
Rename *PM => *ViewModel
Rename *Model => *DataModel
Use 'delegate' naming consistently
Enforce non-nullity for delegate objects
Refactor gui.main.Main* to use new View/Model infra.
Fix compilation errors
Remove CloseListener
Remove all but the last implementation of View#terminate
Refine initializ/activate/deactivate lifecycle methods

... and eliminate terminate entirely
Refine View hierarchy
Fix compilation failure--return View from loadView
Remove notion of 'childController' from View hierarchy
Move View#TITLE_KEY to MainView