Better handling for JSON response errors without __type

Fixes #235. Adds handling for `x-amzn-errortype` headers as returned by
Elastic Transcoder. AWS CLI now prints out the exception name along with
any message from the body.

Updated JSON response tests to support a special `__headers` key to set
the response headers. Modified an existing test to ensure the header
gets parsed properly. Retry tests cover everything we are using already,
so I left those alone.
Fix py3 failure, do not modify method sig
Merge pull request #257 from danielgtaylor/json-error-retry

Better handling for JSON response errors without __type. Fixes #257, #235.