Add Modal and Error modules

* Add Modal module responsible for:
  * determining which states are modal states
  * determining when to show the modal overlay
* Add Error module responsible for:
  * detecting page-wide error conditions
  * displaying information about the error
  * offering resolutions, if possible
  * showing some diagnostic information in exceptional situations