Implement a commit time based RevFilter for before/after filtering
This new filter operates on the commit time field of each commit. It
is easy to access during a revision walk as we have parsed it out to
implement prioritization within our DateRevQueue. Therefore this is
almost free to execute.
The StopWalkException is used to abort the revision walker if we get a
commit whose time is out of range and we are an after date sort of
filter. This trick works as a means to break out of the main loop and
prevent looking at any other commits, but is based entirely on our
decision to sort commits by timestamp inside of the DateRevQueue.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>