Add a KEY_HAS_HASH define.
This turns on/off the caching of the Key.hash.
For now, performance shows negligible impact of adding it,
so it isn't worth the memory consumption. If we get into
adding Key to a KeyDict that doesn't cache the hash
independently, we should re-evaluate whether it is worthwhile.