Database name. This value is prepended to Path to form the full
path in all requests.

By default is empty. This makes it possible to access
different databases through a single connection. But, in this
case, all requests must be preceded by the database name with
unescaped slash. See Path for details.

Runtime enviroment and errors

All functions to access CouchDB require a MonadCouch instance to
access the connection information. ReaderT is an instance of
MonadCouch, and runCouch runs a sequence of database actions using
ReaderT and ResourceT.

If your db code is part of a larger monad, it makes sense to just make the
larger monad an instance of MonadCouch and skip the intermediate ReaderT,
since then performance is improved by eliminating one monad from the final
transformer stack.