changelog: refactored unicode support for Py3

changelog: make py3 boolean private and compact

fixup from @dirk-thomas's comments

- no redundant assert for python3
- make py3 conditional __str__ impl more concise
- remove use of u'' unicode literal