Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If
unsafe_hash is True, add a __hash__ function, but if a __hash__ exists,
raise TypeError.  If unsafe_hash is False, add a __hash__ based on the
values of eq= and frozen=.  The unsafe_hash=False behavior is the same as
the old hash=None behavior.  unsafe_hash=False is the default, just as
hash=None used to be.
