Feature/cascade delete - phase 1 - SQLAlchemy changes; no db schema changes

Deferring db schema changes for the following reasons:
   - MySQL issue with downgrading unique constraints involving foreign keys
   - desire to close sprint out with commitable work (cascade delete works, db schema changes are nice-to-have)