Allow to provide basic auth credentials in URL

Add ability to provide basic auth credentials in URL in form `http://user:password@example.com`.
Explicitly specified `basic_auth` option have precedence over this one in URL.
What about when both are set, which wins? I would assume that the url creds win over the passed in.