Better unicode handling in Emit

Vaguely related to Python 2 & 3 compatibility, which actually makes unicode way nicer, but I had not handled quite right.