Allow ResponseHandler.handleException() to return an object.

This is particularly useful if the caller has a default object they want to use in case of error.
Create DefaultingJsonResponseHandler
Test exception handling behavior of TestingHttpClient