Deals with the funny stuff seen in #771.
The documentation should also make clear what we do turn on the
utf8 flag on by default.
We should also make sure this doesn't
break other stuff at a distance -- I'm quite weary of the
comment in 'serialize' that we don't utf8 the thing there
because it's done "later on"...