Refactor encoding.t for clarity

and to ease adding more tests
Remove unnecessary conditionals in raw api response

the tests pass the same without these, so why bother
Test searching for utf-8 characters

which currently fails.

This was the actual issue in gh-50 and cpan-api/cpan-api#104
even though it was hard to tell because of all the mangled pod.
Test the autocomplete search with utf-8 characters

which currently fails.

Granted it's hard to find package names on metacpan
that aren't strictly ascii but there's no reason it shouldn't work.
Test the raw api request body for proper encoding

this supplements the previous test failures
by testing on a lower level.

This was brought about by investigating mojibaked author data
(which is submitted through an html form). See gh-747.
Pass json octets to HTTP::Request unaltered

The *_utf8 variant re-encodes the body (assuming latin1)
and mangles any utf-8 that was already handled by the JSON encoder

Closes gh-747.