Allow ruby head to fail.
Add Response#mock? method.
Handle headers better with a mocked response.

First the response_headers is now reconstructed if the response is a mock
and the headers are present. And second the headers passed into the
response are now properly returned as Typhoeus::Response::Header. This
issues was reported in https://github.com/typhoeus/typhoeus/pull/324.