Patch 1

Previously the `success` callback was called, regardless of the response code that the server actually returned. Additionally, only the body was passed back into the callback, so it would be impossible to actually determine the response code!

This PR uses the same method is success checking that jQuery does ([code](https://github.com/jquery/jquery/blob/master/src/ajax.js#L680)) and calls the appropriate success, error, and complete callback.