Allow Backbone.DualStorage.offlineStatusCodes to include 200 OK as an offline status

- Rename error callback parameter to xhr, since that is really what it is
- Update the mock ajax callback xhr argument to always include the http status and response
Rename offlineStatusCodes parameter to xhr in the README

This makes it clear that the xhr object is always passed, not the response body.

Also add this option to the changelog.
Use a reliable source to get the xhr for checking the request status

Backbone.sync only sent xhr as a 3rd argument in Backbone <= 0.9.9.
With Backbone >= 1.0.0, every successful request would fail while
checking the status, as of 863db19f (unreleased).

- Update the Backbone.sync stub to reflect the change in Backbone 1.0.0.
- Update the Backbone.sync stub to return xhr as Backbone.sync does.
- Manually set options.xhr, since Backbone <= 0.9.9 did not set this.
- Prepend _ to _status and _xhr parameters that are not passed in
  Backbone >= 0.9.9. These cannot be used by dualstorage as they do not
  work after 0.9.9 and are just passed along for compatibility with
  these older versions.
Accept options (and callbacks) for syncDirty, syncDestroyed, and syncDirtyAndDestroyed

Closes #79
Merge branch 'master' into mocha

Conflicts:
	CHANGES.md
	backbone.dualstorage.amd.js
	backbone.dualstorage.coffee
	backbone.dualstorage.js
	spec/backbone.dualstorage.js
	spec/spec_helper.coffee
	spec/spec_helper.js
Make Backbone.sync stub asynchronous

This forces all specs to use async code, rather than passing only because the stub is synchronous.