Ignore _version if included in ops.$set
Set up push & pull routes to allow unit testing of full response stream (for error handling tests)
First pass at ability to pass in a logger -- currently supports same methods as 'Console' - adapter only.
Separate out the client ID (db.coll$id) construction/parsing, to support better return values from datastore, and since the datastore should own it (it's black box to adapter) .
Datastore now returns a 'result' object encapsulating the returned document - includes metadata so that the adapter can manage errors, conflicts and deletions
Back out most of last commit ('result' object) in favor of better use of promises; added some error handling tests.
Better error handling and use of promises (new over defer) in datastore, including error handling tests
Better error handling and use of promises in adapter
Clean up promises in syncer; begin switching promise implementation to bluebird.
Finish switch to bluebird promise lib; removed notes about 'q'
Added bunyan as an example logger (at the app.js level), may not be the final choice.
Some cleanup in adapter - and add logging when database is ready.