Factor out temporary tree from offset tree.
Factor out temporary tree from offset tree.

Part of #20 for LHARK support. As an optimization we were reusing the
memory allocated for the offset tree for storing the temporary tree.
However, I don't think the saving is worth the extra code complexity,
and more specifically it was coded based on the assumption that the
number of temp codes was always > number of offset codes. With LHARK's
lh7 format that's not necessarily true.

fragglet/lhasa,fragglet/lhasa,fragglet/lhasa