Add cascade delete and fix db nullability
Add cascade delete and fix db nullability
Merge remote-tracking branch 'origin/feature/cascade_delete' into feature/cascade_delete

Conflicts:
	src/ggrc/models/directive.py
	src/ggrc/models/program_directive.py
	src/tests/ggrc/models/factories.py
	src/tests/ggrc/models/test_cascade_delete.py
Add cascading delete behavior to remaining models
Add unique constraint to control_assessment
Add cascade delete and fix db nullability
Add cascade delete and fix db nullability
Add cascading delete behavior to remaining models
Add unique constraint to control_assessment
Merge remote-tracking branch 'origin/feature/cascade_delete' into feature/cascade_delete
Remove remaining references to Transaction model
Allow nulls for control.directive_id
Fix behave tests for cascading deletes and NOT NULL columns

* add `_publish_attrs` for RiskRiskyAttribute
* remove `Transaction` cases for behave tests
* add FactoryStubMarker to fill in required linked resources
* change post_example(...) to recursively POST to make valid links
Fixed live binding in tree view for section-to-control mapping.
Added missing fields (and slight redesign) of Roles modal
improved create new program visually
Unify and semi-fix width sizing on load and on resize
Add 'edit object' link to info.mustache

* also added 'data-widget-view' on Program info widget to handle
  specifying a different 'widget_view' mustache template for InfoWidget
  controller
Fix alembic 'revision' command for --autogenerate
Initial Objective implementation

* also SectionObjective, ObjectiveControl
* models, services, tests, views, forms, can models
* update icon name controlobjective->objective