Introduce tmap/2, a tree map.

This commit introduces a tree map. The implementation does not allow for the
structure of the tree to be pruned; the map is applied at all leaf values
without touching internal node names. Subtrees may be added at leaf points,
however.

Signed-off-by: Brian L. Troutwine <brian@troutwine.us>