optimized isdual for bases using statemap hashing - inner products are now awesomely fast between DiracVectors whose bases are dual