1 millon * improvement to isomorphism

Much better isomorphism implementation with lazy data structures and better algorithm. Can fail if complexity of calculation is too big, and that is user settable.
Do you need the self reference?