revamp how locations get attached to cases and forms

- use signals instead of relying on commtrack helper functions
- only fire signals on commtrack cases
- this also adds a stub model for supply point products + tests
- and adds a fix and test for attaching locations to requisitions + forms
- should have less writes to couch for standard submission workflows too