Sanitize models' attributes/options before passing to bookshelf/knex

closes #2653
- enforce strict whitelists for model methods
- create a class method that reports a model method's valid options
- create a class method that filters a model's valid attributes from data
- create a class method that filters valid options from a model method's options hash
Merge pull request #2679 from appleYaks/sanitize-model-options

Sanitize models' attributes/options before passing to bookshelf/knex