plugin.api.http_session: Make sure a read timeout is set.

requests 2.0 changed the read timeout behaviour,
but it will be fixed in the future 2.3.0 release.

This fix uses a HTTPAdapter if needed that will
make the behaviour consistent on all versions.
tests: Python 2.6's unittest module is terrible.