Add C API coverage for atomic write operations

Hi, I work for Anchor (Sage met Andrew Cowie from Anchor last week).

Sage mentioned that he is interested in adding coverage for atomic operations to the C API, which I need to build haskell bindings capable of an atomic write-if-not-changed.

This patch starts by adding coverage for most atomic write operations, I didn't end up adding read functions as it required a bit of tweaking to make asynchronous reads work.

Tests all pass with line 35 of src/test/librados/c_write_operations.cc disabled, someone will need to look at that, I'm not sure what's going on. I'm would have expected an error returned, but none is.