Rewrote set method to incorporate Backbone's, rather than to call it in
a 'super-y' way. This is because calling Backbone's set at the beginning
of the set method causes Backbone to immediately emit change events,
before any mutators or nested properties are set.

Also, calling Backbone's set meant that every set of a mutator actually
created a property with that name in the attributes hash. This was
unexpected and occasionally problematic.

The new set now only adds attributes that the user specifically expected.
It also only emits change events after any mutators have been run and
nested properties set. (This fixes
https://github.com/asciidisco/Backbone.Mutators/issues/26).
Add tests from Backbone and Backbone.Mutators to ensure ongoing compatibility
Fix tests. (And remove a blatantly incorrect comment)
Fix an error I had made in not understanding the use of
{mutators:silent} as an option to set()
I needed to modify one test from Mutators, as Mutators was incorrectly calling
a mutator function twice on set, a condition which is fixed in Model.Plus