Good thoughts... what about converting body to a property and on set, check if unicode and encode to utf-8, then set the result to resp.data; then all the api helpers only ever act on resp.data, ignoring body.

BTW, I found and fixed a bug where content length was always 0 when resp.data was set in lieu of resp.body! Be sure to rebase off mainline. :D