Passing along HTTP response on error

Fixes #75.  Using the REST API, the response was getting swallowed
when any error occurred.  Response headers are useful in some
cases, such as rate-limit errors, so passing the response through
to the user's callback is valuable.  One test was updated to
account for this new behavior.