Use unicode internally everywhere for 'repr'.

Closes #2270.
No. Python 2 expects `repr` to return `str` values. Given that we're using unicode throughout, we need to forcibly coerce those immediate prior to returning the values.