CXX-183 Add save method to dbclientinterface

We don't return an _id here (unlike other drivers) to be consistent with the rest of our decisions regarding _id and mutating documents for this version of the driver.

We could generate one and inject it here if one is not provided and return it if we want, just let me know.
Are these three stanzas maybe worth breaking up into independent tests?