Stop modifying people's `options` objects passed to Model's `setAttrs()`

This fixes an issue where people's `options` objects were being modified by Model's `setAttrs()` method which was adding the `_transaction` to their object. Now a shallow copy of the `options` object is created before it is modified.

Fixes #598