Splitting up into acouchbase and txcouchbase. The test infrastructure for asyncio is more robust so will add ping() to acouchbase first. See linked ticket for txcouchbase work. Since the underlying changes in the c-bindings are complete, the txcouchbase changes should be straight-forward (just a matter of cleaning up the Twisted test infrastructure).
NOTE: diagnostics does not do any I/O, can call cluster.diagnostics() accordingly (no need to await).