How can I convert a dict to a unicode JSON string?
===

This doesn't appear to be possible to me using the standard library `json` module. When using `json.dumps` it will automatically escape all non-ASCII characters then encode the string to ASCII. I can specify that it not escape non-ASCII characters, but then it crashes when it tries to convert the output to ASCII.

The problem is - **I don't want ASCII!** I just want my JSON string back as a *unicode* (or *UTF-8*) string. Are there any convenient ways to do that?

---

I'll accept solutions like:

  * Hacks (pre- and post processing input to `dumps` to achieve the desired effect)
  * Subclassing the [JSONEncoder][1] (I have no idea how it works and the documentation isn't very helpful)
  * Third party libraries available on PyPi

  [1]: http://docs.python.org/library/json.html#json.JSONEncoder