If the json dumper sees utf-8 encoded strings that
it wants to join with other strings, it will not work.
Instead make all the data fully unicode to make json
dumper happy. Then force it to encode to utf-8 to make
python's IO happy.
Clarify that the data is in UTF-8 where applicable. It is expected
that clients are capable of handling UTF-8 for now. Additionally,
the HTML api explorer handling of numeric data is fixed.
There is no hard guarantee that all 4 bytes will come. In practice,
I've never seen this occur, but to be complete, should make sure recv gets everything it was supposed to.