Version incorporating guava TreeTraverser will be 0.11.0
Add Lazy.traverser(TreeTraverser)
Refactor Traversals.preOrder() to be consistent with Gauva TreeTraverser.

This is the beginning of a major refactoring to include all the traversals.
The goal is to decouple the tracking of Walks from the traversal. All
traversals will use a basic TreeTraverser<T>, except for the leaf/element
traversals. If tracking Walks is desired, then the client should provide
a TreeTraverser<Walk> as the adjacency function, to either these traversals
or the ones in Guava.
Refactor Traversers.empty() to use Guava's TreeTraverser.
Fix a comment.
Refactor Traversers.postOrder() to use Guava's TreeTraverser.
Refactor Traversers.breadthFirst() to use Guava's TreeTraverser.
Fix comment.
Use just the vertex, don't need the entire Move.
Refactor Traversers.leaves() to use Guava's TreeTraverser.
Remove Lazy.traverser( Traverser ).
Remove TraversalMove. Move TraversalMove.rootIterator() to a top-level class.
Refactor Traversers.elements() and elementPath() to use Guava's TreeTraverser.
Remove Traverser interface.
Fix leaf iterator for singleton graphs.
Moved most methods from Traversers into a new class, Traversals.

Traversers has factory methods producing TreeTraversers or closely related
things.

Traversals has factory methods producing Iterables that traverse.
Utility class should be final.
Document how these are different than Guava's traversals.