Fix unicode

The only requirement for \__unicode__() is that it return a Unicode object. If \__unicode__() doesn’t return a Unicode object – if it returns, say, an integer – then Python will raise a TypeError with a message like "coercing to Unicode: need string or buffer, int found".