Fixes to S3Config fetching and messaging closes #1474 and closes #1475

The new fetcher to use a local config file made development diverge significantly from production and made the code more complex. From the user's perspective, it resulted in an error message every time there was an issue downloading the config file (DNS down, network flaky, whatever), even if the user already had a valid proxy. The goal of the new fetcher to make the dev environment work correctly with the s3 config paradigm is much more easily accomplished with adding a ".lantern-configurl.txt" file to the current directory pointing to a live bucket. That requires no code changes and also makes the dev environment follow all the same code paths as production to avoid hiding errors like the above.

This change also updates to the latest HttpClient. This was necessary to add a global random-length header but it also in general has nicer configuration. Also added an S3ConfigFetcherTest.