Fix endless traversal loop
Previously, the algorithm stopped traversing parent commits upon
determining that the needn't be processed. This could leave commits
where other, later merged branches were forked off in limbo: Some of
their child commits were never traversed, so it could never be
determined if they needed to be processed, thus they got put back to be
revisitied, ad nauseam.
The fix is to keep on traversing commits, but not process those whose
results aren't needed.
Fixes: #202
Signed-off-by: Nils Philippsen <nils@redhat.com>