Don't iterate over bit sets as much.

    We shouldn't need O(n) bit set iteration when we can just
    keep a proper adjacency list.
Make things slightly less O(maxreg)ish

   Use a dense vector for the adjacency list. This is slightly
   less stupid than using a sparse bit set.