framework changes

presenters (controllers) and views are no longer subclassed models;
they're now their own root objects (for better performance and
extensibility). added a bunch of new optional methods (see changelog)