Only allocate data builder if storing data
Fix test to fail if Valgrind reports errors
Store chunks sequentially

When consolidating the trie, reorder chunks so that chunks of same list
are stored sequentially. The lists are terminated by a null chunk (that
has all values equal to zero). The procedure may also help with speed
due to better cache locality.
Store list length in nodes

This should save more space because only 1 byte of overhead is used per
list.
Store the chunks sorted

This way they can be looked up with binary search instead of linear time
algorithm.
Fix access to uninitialized memory
Bumd file version
Add test coverage support

Use make coverage to compute test coverage. This will re-run the tests
to get better results. The tests do not use valgrind. Do not install if
coverage is enabled.
Use valgrind only if installed

Fixes #5
Do not invoke make from test scripts
Simplify tests with helper script

Testing scripts now define only the test data. All logic concerned with
running the tests resides in a helper script.
Clean up test helper script
Improve error reporting in tests