Fixes infinite CPU loop when tunneling for py26.

The bug was in the http standard library for py26. Sometimes the ``_tunnel()``
function entered an infinite while loop due to incorrect assumptions made
on data read in. Especially affected users that were using proxies.

I tested the fix on the VPC that reproduced the bug.  It worked fine and I did not see any additional errors that were seen in previous attempts to fix bug.  Tests are included to ensure bug is fixed.

cc @jamesls @danielgtaylor 
I am confused.  The first three test I added are for Python 2.6 and the last test is for non-Python 2.6.  I put the ``skipIf`` in for the first three test because I only need to test test functionality for python 2.6.  If I remove the ``skipif``, I start getting failures and may get tricky to mock the class so that it passes across all python versions (but yet again I do not need to test functionality for non-Python 2.6 because the bug is fixed).  The last test skips if you are using Python 2.6 because all I am testing is to make sure the ``_tunnel()`` function from stdlib is called as opposed to the one I implemented for py26.  If I remove this ``skipIf`` it will fail for py26 because it does not use the stdlib version