Allow Customer ResponseTransformers on Remote Validation

@jzaefferer This will keep existing functionality, but also now allow for a user to provide a param to the remote called `responseTransformer`. Unlike jQuery.ajax()'s `dataFilter` this will now allow for a user to handle errors (404s, 500s) etc properly and display valid or invalid on it.

Moving the logic to handle these errors to ajaxComplete() is useful because cross-domain request will not trigger an error. 

The function provided to `responseTransformer` must return `true` or `false`. This is because that response is then passed to the shared logic that renders the form invalid with an error message or allows the form to be submit.

Let me know if you have any suggestions/questions. I think this will benefit.
Using the statusCode option does not enable me to conform to your specification. The issue for me is that your library expects a successful response, even if there is an error. In all cases, you require a `true` or a `false.` However, the API I am hitting provides me with a `404` if the zipcode I pass does not exist. 

Since there is no transform on error, I cannot possibly provide `true` or `false`. I am trying to develop a method of handling ajax.onErrors() as well as onSuccesses. The problem lies in the fact that onError() is not called on cross-domain requests.