Response header fixes

This PR does a few things:

* Optionally enables detection of Captive Networks, according to the [Google docs](http://developer.android.com/reference/java/net/HttpURLConnection.html) - this is off by default because some requests will legitimately redirect off-domain (most often with S3)
* Fix returning the response headers on Android - the fact that nobody has caught this until now is...disconcerting.