If "Whatever the JSON encoder we use does" means that one day, the daemon starts sending UTF-8 encoded characters, it is quite possible that existing clients will break because of previously unnoticed encoding bugs. So I would like to see some formal documentation of the protocol.
Json standard is pretty clear that any character can be escaped using \u <utf-16> code point or you can just have things be utf8. If clients break because they can't handle that, that is the client's fault. Its not a hard requirement.
I see no reason why we couldnt change later if need be. Furthermore I see no reason why we would care which way we went on that issue. The raw json isnt meant for human eyes.
-bawolff