Adds view types for locations.  Adds Framework at top of hierarchy.
Rewrites ugly Location class.  Adds some common classes for later use.