A generic Text implementation for chaining underlying chunks by using a
linked list of Datums provided by a DatumAllocator. The chunk type can
be any TextChunk. This is useful when heap allocation isn't available (or
desired) and a Parser's DatumAllocator is the only available (or
desired) dynamic allocator.