Populate exceptions with errors from the response

Changes the isValidIntercomError method to be a static and adds a test case to check error data is being supplied to the Exception.