general CRDT library in Scala