Played around with generics. We have a functioning tree that provides
different order iterators. It uses generics so the iterators returned
are of the proper type.