Mutating a key's hash-relevant field after insertion: the entry is still THERE, just unfindable
===============================================================================================

map.put(key(tag=42), ...) then key.setTag(99)
containsKey(new MutableKey(42)) before mutation : true
containsKey(new MutableKey(42)) after mutation  : false  (looks for old hash's bucket - key no longer hashes there)
containsKey(new MutableKey(99)) after mutation  : false  (looks in the NEW hash's bucket - key was never filed there either)
map.size() is still                              : 1 (the entry was never removed!)
the mutated key object IS still found by direct iteration over keySet(): true