Improved error handling and messages for resourceOrError()
When protocol, HTTP errors or SCIM errors occur, the messages returned contain a much better description of why the error happened. The primary reason is that if an entity body exists in an HTTP response that returned an error, the code first attempts to unmarshal the body to a scim.ErrorResponse. If that fails, the body contents are still included as are the status code and status description from the response.