expose the response as ResponseError#code, ResponseError#message

I've changed ResponseError a little bit to expose the response code & its
message or content as ruby methods that return the type that makes most sense(so
for code, that'd be Fixnum, and '__content__' as a string).

I maintained backwards compatibility with the old object in the sense that
ResponseError#inspect returns the same string as before.

I've found this code to be useful when ResponseError is too generic and I need
to take certain action based on the response code.