Singleton for requests session

Instead of instance-level, use a module level singleton so that in multiproc code,
subprocesses each have their own, reusable session.

Testing Done:
https://travis-ci.org/pantsbuild/pants/builds/39542444 passed

Bugs closed: 751

Reviewed at https://rbcommons.com/s/twitter/r/1264/
sitegen: get page-level table-of-contents working again

workaround for: modifying the AST to add the here-links had the side effect
that the find-every-header function no longer finds headings. So reorder
operations: find every header before adding the here-links

While adding an import to test_sitegen.py , noticed it was missing the
usual "from __future__ import", so added that.

Testing Done:
https://travis-ci.org/pantsbuild/pants/builds/39653188

patched this and https://rbcommons.com/s/twitter/r/1182/ into a branch and test-generated the doc site: http://pantsbuild.github.io/sitegen-test/JVMProjects.html

Reviewed at https://rbcommons.com/s/twitter/r/1191/