Use bookshelf's model registry plugin

Refs #2170

This removes the circular dependency problem from our models thanks to
https://github.com/tgriesser/bookshelf/issues/181
- add the registry plugin
- switch all models and collections to be registered
- switch relationships to be defined using a string, which calls from the registry
Merge pull request #3258 from ErisDS/model-registry

Use bookshelf's model registry plugin