Avoid RevFilter.ALL or TreeFilter.ALL in AND/OR combination
If the caller has asked us to join an ALL filter into a boolean
AND filter we actually just need to return the filter given for
the other side of the AND condition, as the ALL filter is always
going to yield a true result.
If the caller has asked us to join an ALL filter into a boolean OR
filter we actually can just return the ALL filter, as we may never
even invoke the other side. This does slightly break with the order
of operations (especially if the ALL is the right side of the OR
operator) but RevFilters and TreeFilters shouldn't (in general)
have a side-effect as a result of calling their include method.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>