Teach RevWalk how to completely toss its internal state
Some applications may wish to toss everything away, thus forcing
a full reparse of RevCommits in the future, or just making the
large pile of RevCommits they had traversed be eligible for garbage
collection. Nulling out a RevWalk reference may seem to be easy,
but can actually become very complicated if the application has
many RevFlag instances created from a RevWalk (RevFlags point back
to their parent walk).
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>