allow user to supply which fields to suppress/transmit when saving

@angelini @pushrax 

Basically, we have a lot of scenarios where we only want to save parts of models.  I added a blacklist and a whitelist with `except` and `only` respectively.