More detailed exception message that includes block type information.
Updated NEWS.
Split tree and leaf search perf tests into separate functions.
It's faster to use std::vector here instead of std::list.
Speed up build_tree() and search_tree() in flat_segment_tree.

Now all nonleaf node instances are pooled and stored in contiguous memory
region.  I still need to adjust segment_tree in order to make it
buildable.
Put the node classes and its functions inside an impl namespace.

To make it clear that this code is not supposed to be used outside
the two segment tree implementations.
Adopt segment_tree for the new base node structures.
Some cleanups & ensure it builds with MSVC 2008.
Up the version to 0.10.0 and populate the NEWS.
std::back_inserter in this case is ambiguous with older gcc, so don't use it
Add a method to set empty to a span of elements.
Write a test for the new set_empty() variant in multi_type_matrix.
Update NEWS and up the version to 0.10.1.
Properly handle one code path in transfer().

When transfering a range that consists of the lower part of an upper
block and the upper part of a lower block, the incorrect assertion
would kick in and the code would do the wrong thing and eventually
would lead to a crash.  We need to handle this scenario correctly.
Update NEWS and up the version to 0.10.2.
Initial implementation of push_back() and push_back_empty().
Add javadoc comments for push_back() and push_back_empty().
Add variants of release() that take start and end positions.
Updated NEWS.
More useful exception message.