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.
I see, thanks for the explanation. I'll have to dig into this some more, might take a while.