I don't think mutability is a concern if your goal is to get a bidi map between strings and (mutable) _instances_; i.e. if you just want to use the reference to the dict itself as the hash rather than the contents of the dict itself.
I just assumed it was the former, based on the fact that dicts are disallowed as keys.
The reason for that choice is because the object is mutable.