gcompat: Teach qq to accept both str and unicode + emit printable UTF-8 as is
This patch made its first step as a way to teach qq to also work on python3. However the differences in str / unicode and escapes in between py2 / py3 quickly popped out and then it became easier to just handle whole escaping logic myself. The implementation is based on go123@c0bbd06e and byproduct of manual handling is that now we don't escape printable UTF-8 characters.
Showing with 128 additions and 22 deletions