Improved traversers

Added abstract class QueueBasedTraverser holds general logic for most
traversers.
Fixed errors in InfoKeepers.
Added InfoKeeper that uses IntToBoolean fastutil map to store Boolean
values.
Changed BreadthFirstTraverser so that first node is the node we start
traverse from (to be consistent with other traversals).
Since AllPaths is the only one that does not use coloring, and we don't yet know whether it is useful or not, I would just simplify and have only one class QueueTraverser that has coloring. AllPaths can ignore it.

Stats logging -- feel free to ignore it wherever it is tricky