Added view controller to be extended by views provided in plugins.

Including a definition of the view areas.
Added separate DataViewController parent class

Because data objects represent a specific type of data with specific
view controllers that need specific methods.
Later, controllers for navigation type views, information and property
editor views are probably needed.