Add error response status and message injection.

This allows a server response to override the response status code and
error message by returning a packet that contains an object such as:

{status: 400, message: "Bad request"}

This caters for the situations where a correct response status cannot be
correctly determined such as the jsonp transport and the XDomainRequest
object.