In ESO remote tests, use tmp dir for cache

Also fix a few whitespace issues
Merge pull request #392 from sargas/use-tmp-dir-for-cache-in-eso-test

In ESO remote tests, use tmp dir for cache
Use text or binary content without confusion

Eliminate encode/decode in as many places as possible
Make use of the request module's decoding
Correct tests to use binary data for MockRequest.content

Text data is decoded automagically by a .text property
Some mocked get_readable_fileobj need encoding='binary' support
Update template_module to differentiate content/text
Merge pull request #393 from sargas/let-requests-do-decoding

Remove some Python3 hacks