Use user supplied options when resending authenticated requests

Hooks sometimes have to send requests (e.g. when responding to a 401 during
authentication).

All keyword arguments should be passed along when hooks are dispatched so that
if a user wanted to use a timeout, stream, specify a cert location with the
verify flag, etc, their specification can be followed.
Adding test to ensure options like stream function with authentication

This test demonstrates the reason why we need to pass kwargs to hooks. Without
it, features like stream cannot work with authentication.
New tests fail on python 3.x because read() returns bytes and the test checks for strings
Fixing test for python3
[kennethreitz/requests#1208] adding a max_retries argument
[kennethreitz/requests#1208] adding unit test for max_retries
URLError doesn't exist anymore
Github URL fix
Initial docs patch for migrating from pre 1.0
Logic on streaming responses was changed in 1.0

* prefetch=False in 0.x is now stream=True
Capitalize s in Session
Session isn't advertised as a context manager
Merge pull request #1231 from davidfischer/docs-migration1.0

Initial docs patch for migrating from pre 1.0
Merge pull request #1230 from davidfischer/trivial-docs-fix

Github URL fix
Merge pull request #1229 from sprt/master

Doc fix: URLError doesn't exist anymore
Merge pull request #1226 from dmedvinsky/fix-typos

Fix couple of typos in HISTORY.rst
Merge pull request #1219 from Wilfred/master

Adding max_retries as an argument
Merge pull request #1190 from mkomitee/master

Pass user options to hooks
Add ability to pass `response` to `HTTPError()`

Just a little refactoring, but it seems nicer to me to be able to pass
the response when constructing the `HTTPError` instance instead of
constructing it and then changing the member variable.