Adding an argument to the adapter for passing a block argument to the connection pool.

This allows for blocking when using threading to prevent the pool from creating more connections that the max-size allows.

Specifically was seeing the following errors without the block=True:

    WARNING:requests.packages.urllib3.connectionpool:HttpConnectionPool is full, discarding connection: www.example.com
Moving the order of the arguments in the init to not interfere with existing usage.
Fixing the call to init_poolmanagers to correctly unpickle the adapter.
Adding the _pool_bloc to the list of attrs.
Always percent-encode location headers.
Merge pull request #1363 from dave-shawley/master

Fix for #1362
download image!
Merge remote-tracking branch 'origin/master'
Attempt a fix for @michaelhelmick
Merge pull request #1370 from sigmavirus24/origin_req_host

Add an extra property for Python 3.3
Merge pull request #1361 from Lukasa/1360

Always percent-encode location headers.
Merge pull request #1356 from Zoramite/ConnectionPoolArgs

Adding an argument to the adapter for passing a block argument
v1.2.1
Merge remote-tracking branch 'origin/master'
Refactor merge_kwargs for clarity and to fix a few bugs
Merge pull request #1343 from gazpachoking/#1321

Refactor merge_kwargs
Only pass unicode fieldnames to urllib3.
Merge pull request #1373 from ib-lundgren/unicode_fields_to_urllib

Only pass unicode multipart fieldnames to urllib3.
Fix typo, %t -> %r
don't replace 'Digest' in digest header value

See https://github.com/kennethreitz/requests/issues/1358