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.
jnunemaker, I probably agree with you here. Setting creds explicitly via basic_auth option feels like default value, and creds in url is kind of ability to redefine defaults. I'll update this behaviour very soon.