I think i found the problem this time? see comment

run ExtHashMap by itself with it's given main method.  I changed it so
it inserts even numbers too, and this is making it fail. It will print
the state of the buckets on every insert and give info on how the insert
is happening.

Everything goes well until we insert the key 10. It puts it in a bucket
of local depth 2 along with keys 1, 5, and 9.

1 =       01
5 =     101
9 =   1001
10 = 1010

10 clearly doesn't belong. However, the hash is picking directory 2
which should be bit pattern: *10.
Directory2 is pointing to the same bucket as directory1 which has bit
pattern: *01

So... directory 2 is pointing to the wrong bucket?? I think it should be
pointing to directory 0