Support for CouchDb

The most obvious change is a refactoring of CloudantStore into
CouchDbLikeStore.  Most complex code is shared between CouchDb and Cloudant
providers. This is relatively difficult to achieve due to the fact that the
CouchDb and Cloudant APIs are type-incompatible, despite performing basically
the exact same operations. The consequence is the existence of the classes
`CouchDbProvider` and `CloudantProvider` which expose all operations through
type members.
1 file changed
tree: 69b9c179d74e00b24238504a5d84e45248ce9b5b
  1. tools/