Can you add some error handling here? Currently, if I change the tests below to use e.g. `b'broken'` instead of `XMLBODY1` then I get a cryptic error and never get to see the body:

```bash
$ nosetests tests/unit/test_response.py
....E...
======================================================================
ERROR: test_response_streaming_broken (tests.unit.test_response.TestGetResponse)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/taylordt/Projects/Amazon/botocore/tests/unit/test_response.py", line 197, in test_response_streaming_broken
    response.get_response(session, operation, http_response)[1],
  File "/Users/taylordt/Projects/Amazon/botocore/botocore/response.py", line 478, in get_response
    xml_response.parse(body, encoding)
  File "/Users/taylordt/Projects/Amazon/botocore/botocore/response.py", line 72, in parse
    self.tree = parser.close()
ParseError: syntax error: line 1, column 0
-------------------- >> begin captured logging << --------------------
botocore.service: DEBUG: Creating service object for: s3
botocore.hooks: DEBUG: Event service-data-loaded.s3: calling handler <function signature_overrides at 0x107a74488>
botocore.hooks: DEBUG: Event service-created: calling handler <function register_retries_for_service at 0x107a742a8>
botocore.handlers: DEBUG: Registering retry handlers for service: Service(s3)
botocore.service: DEBUG: Creating operation objects for: Service(s3)
--------------------- >> end captured logging << ---------------------

----------------------------------------------------------------------
Ran 8 tests in 0.057s

FAILED (errors=1)
```

Maybe you can log the body and raise a new error or just pass the syntax error through after logging?