Handle HTTP error response and set Accept-Encoding to request gzip'd data.
Includes JUnit test using Mockito.
comment added: readAndCloseStream() returns null if input is null
Use jdk7 getContentLengthLong() instead of jdk6 getContentLength()
Throw only HTTP status code and response message in IOException.
HTTP 404 error messages as returned by Apache.
Merge remote-tracking branch 'hbswn/master' into pull-78
merge and refactor pull request #78 fixing #74