We already visit every single successor of the graph, so we don't
actually need to find the inverse edges, we can just store what they
are. This removes the need for inverse traits to compute dominators.
It's also a very slight speedup on large graphs, i'm leaving it here
while I test it on non-x86 platforms.
Just wondering, why 2?