2 bug fixes (pretty serious)

* Promise.finally() did only call function on success. This bug was
introduced in version 0.96.
* WriteableTable.put() did not work (failed with DataError) if all of
the following conditions were true:
1. There was a registered 'creating' hook
2. The table schema used an inline primary key.
3. The object to put had the inline key on it
4. There were no existing object in DB with that key.
What it did was to call add() internally with the inline key specified
in the second argument, which resulted in DataError since the IDB spec
forbids to specify key if object has an inline key.
Bug fixes after unit testing Dexie.Syncable

Unit testing of Dexie.Syncable on its way. So far I've found a lot of
bugs in all files: Dexie.Syncable.js, WebSocketSyncProtocol.js and
WebSocketSyncServer.js.