The update and find functions in the Riak module are confusing - it is not clear whether you're dealing with a datatype or regular object. It would probably make more sense to move the datatype specific functions into Riak.CRDT. Additionally it seems appropriate to move Riak.CRDT to Riak.Datatype, and also move some of the Riak module functions to Riak.KV or Riak.Object to clear things up.
Thoughts on this naming change?