Make owned FK columns not nullable

Create explicit indexes for FK cols that need to be part of unique
constraints
Create unique constraints for compound keys in association tables
Clean up invalid rows before adding constraints
Merge remote-tracking branch 'origin/develop' into feature/fk_nullability
Merge pull request #103 from reciprocity/feature/fk_nullability

Make owned FK columns not null and add unique constraints