Ensure the id on modelUpdatedwithResponse gets set properly

Set the idAttribute before the attributes so it can set the right attribute to be the id.
Use idAttribute instead of id when nullifying the model id

Otherwise models with a different idAttribute that are created offline will, when updated,
attempt an onlineSync update (with the temp id) rather than a create request.

Also be silent; it's not useful to trigger an id change event right.
Avoid the use of clone

Instead of cloning the model, just set the id back before calling delete to remove the local copy with the temporary id.

Multiple calls to save (update) should not cause concurrency problems, because regardless of what callback has changed
the model's id, is set (for delete) immediately after the callback returns, and the server response with the new id
is sent to the success callback, which causes the model's id to be updated to the one from the server.

Fixes #75
Note idAttribute and clone fixes in the changelog