Revert "Proxy urls should have explicit schemes."

This reverts commit 840540b6b1f07ef87faab73392c03fbef0dcc9fe.

Conflicts:
	requests/adapters.py
	requests/utils.py
Default proxy scheme to http.
Add documentation about decode_unicode.
Always honor decode_unicode, even when _content is present.

--HG--
extra : amend_source : 25977a1227b163d49bf2e1aec6aa448e5cd3be8a
Add tests for decode_unicode
Split get_environ_proxies into two methods.

This makes it possible to get at the no_proxy logic separately.
Move auth rebuild to its own method.
Add method for rebuilding proxy configuration.

This includes auth.
Remove some extraneous comments to please KR.
Test stripping standard auth.
Fix #1960: A Response's history should be a list
Fix #1955: Do not use original request in redirect

The original request was never being properly overriden in resolve_redirects.
As such being having a POST request respond with a 303 would generate a GET
request. If the GET request encountered another redirect to something like a
307, then it would use the original request and generate another POST request.

There are two parts to this fix:

- The fix itself
- The test infrastructure to ensure it does not regress because HTTPBin is
  insufficient
Actually assign history
Add __str__ to case insensitive dict. Logging headers for debugging purposes is often necessary, and the currently logging the headers would be using __repr__ which would log the implementation detail of headers, caseinsensitivedict. Adding str lends a more printing and log friendly implementation for case insentitice dict
Style changes thanks to @sigmavirus24.
Fix parenthesis typo
Merge pull request #1951 from Lukasa/proxyauth

Re-evaluate proxy authorization.
Shorten str for case insensitive dict
3.4
Merge remote-tracking branch 'origin/master'