----------------
Backwards Incompatibilities
~~~~~~~~~~~~~~~~~~~~~~~~~~~
- When a new object is added using ``__setitem__`` with the same name
as an existing object, a KeyError is now raised rather than the item
being silently replaced.
- API methods accepting a ``name`` (``__setitem__``, ``__getitem__``,
``get``, ``__contains__``, and ``__delitem__``) now attempt to
decode bytestrings to Unicode using the utf-8 encoding before
performing the action the method implies.
- Previously, it was possible to store either an ASCII bytestring or a
Unicode object as a key value. Now all key values are converted to
Unicode before being stored.