Prettify policy and data source tables in Horizon

Break up policy rules into multiple lines and data source tables into multiple
columns.

horizon/
* congress.py: New constants used to parse rules for formatting. Use the full
  string for PolicyAPIDictWrapper names by default. Add new function to delete
  values from apidict. Add PolicyRule class. Return None for objects not found
  instead of empty apidict. Change some names and add docstrings for clarity.

horizon/datasources/
* tables.py: Fix indentation. Change class name for clarity.
* views.py: Fix exception handling - exceptions.handle() only works with
  certain types of exceptions. Remove sorting of policies tables, which may
  take a while for a long list. Split plugin and plugin-derived policy data
  tables into columns based on the table's schema. Split user policy data
  tables into unnamed columns. Add data source type to details view.

horizon/datasources/templates/datasources/
* _detail_overview.html: Show data source type. Remove condition for showing
  table name.

horizon/policies/
* tables.py: Split policy rules into multiple lines.
* views.py: Fix exception handling - exceptions.handle() only works with
  certain types of exceptions.

Change-Id: If289cea3b8e5cbe03628011143d81f31ccc292a8
Closes-Bug: 1379565
Merge "Prettify policy and data source tables in Horizon"