Fix #2471 merging with defaults
Merge pull request #2477 from caseywebdev/merge-defaults

Fix #2471 merging with defaults
fix #2345 return a rejected promise instead of false on invalid model save
allow Backbone.Deferred to be overwritten on a framework level. Also changes the `rejectWith` calls to just `reject` since most promise implementations dont have this method
add backbone.Deferred sync tests
return a rejected promise when Model#destroy fails