osd: move ObjectState side effects out of do_osd_ops
We want to be able to handle a failure mid-way through an OSDOp
transaction and bail out with no side effects. This patch
* puts an ObjectState new_obs in the OoContext that modifications go in
* only applies if it the transaction is a success
* only does make_writeable (at the end!) if the transaction is a success
There are still side effects with the watch/notify stuff, though.