A variety of fixes

* most important: refactor Directive and System to use proper subclassing
  - includes a migration to transform polymorphic types to use the correct
    "type"
  - includes a variety of test/behave changes to handle inheritance cases
  - permissions for inherited types also inherit (!)
  - fix admin/reindex to not duplicate entries due to inheritance
* merged in quick-search refinements and mapping refinements from Brad
* several fixes for dashboard layout, including:
  - remove widget default heights
  - .widget-area sizing