This module implements an object storage. This is a directory on disk
containing a content-addressed storage. This is useful for storing all kinds
of things, particularly filesystem trees, or darcs pristine caches and patch
objects. However, this is an abstract, flat storage: no tree semantics are
provided. You just need to provide a reference-collecting functionality,
computing a list of references for any given object. The system provides
transparent garbage collection and packing.

Object storage. Contains a single "hatchery" and possibly a number of
mature space blocks, usually in form of packs. It also keeps a list of root
pointers and has a way to extract pointers from objects (externally
supplied). These last two things are used to implement a simple GC.