Make hhtp proxy aware of AuthenticationConfig (for password).
* bzrlib/transport/http/_urllib2_wrappers.py: (Request.__init__): Update the auth dict content documentation. (extract_credentials, extract_authentication_uri): Deleted. (PasswordManager): Deleted. (ProxyHandler.set_proxy): Query AuthenticationConfig for the password. Simplified. (AbstractAuthHandler): Looong forgotten feedback review about _retry_count. The behaviour is not changed. (AbstractAuthHandler.get_password): Change signature now that the auth dict contains all relevant information. Simplified. (DigestAuthHandler.auth_match): Delete gratuitous differences with BasicAuthHandler. (Opener.__init__): Get rid of PasswordManager.
* bzrlib/transport/http/_urllib.py: (HttpTransport_urllib._perform): Replace authuri by its components in the auth dict.
* bzrlib/transport/ftp.py: Register 'aftp' for urlparse (revealed by the host empty test in _split_url).
* bzrlib/transport/__init__.py: (ConnectedTransport._split_url): Check that host is not empty. Was first needed to make a proxy test pass, but revealed more bugs in the test suite.
* bzrlib/tests/test_transport_implementations.py: (TransportTests.test__reuse_for): Fix bug revealed by the host empty test in _split_url.
* bzrlib/tests/test_transport.py: (TestConnectedTransport.test_connection_sharing_propagate_credentials): Fix bug revealed by the host empty test in _split_url.
* bzrlib/tests/test_smart_transport.py: (HTTPTunnellingSmokeTest._test_bulk_data): Fix bug revealed by the host empty test in _split_url.
* bzrlib/tests/test_http.py: (TestHttpTransportUrls.test_invalid_http_urls): ConnectionError can't be raised here. (TestHttpProxyWhiteBox._proxied_request): No more PasswordManager, yeah ! (TestProxyHttpServer): Delete FIXME, tests have been added a long time ago.