doc: don't HTML-escape already-escaped text

It's a little silly that http://pantsbuild.github.io/goals_reference.html says "-&gt;" when it means "->"

Testing Done:
./build-support/bin/publish_docs.sh -o

Temporarily tossed in a <b>YARGLE</b> to make sure it was still escaped and I wasn't turning the goals_reference page into some javascript sploit thing.

Reviewed at https://rbcommons.com/s/twitter/r/427/
Emit full path for docs produced by sphinx.

RB_ID=https://rbcommons.com/s/twitter/r/432/
doc: when your diamond dependencies are more like a triangle

Until we finally consolidate the world's source code into one monorepo, we may occasionally encounter this situation.

Reviewed at https://rbcommons.com/s/twitter/r/430/
A mechanical refactor of tasks/targets into pants.backend.<backend>

* Modularize registration of BUILD parse context into
per-backend register.py entry points.
* Remove all global state from BuildFileParser.  Even BUILD
file context is instance local now.
* Adjust tests to inject the minimum amount of BUILD context
into their local BuildFileParser.
* This closes most of pants/issues/5 and fixes a regression
from rbt 321 that slowed down test running significantly.

Testing Done:
CI passes

Reviewed at https://rbcommons.com/s/twitter/r/417/
Add a bunch of missing __init__.py's.

No idea how this always manages to slip by me.
More missing __init__.py's
Plumb FingerprintStrategy through invalidation logic

Implement a custom IvyResolveFingerprintStrategy to selectively
invalidate ivy resolution only on the contents of JarLibrary payloads
and the excludes + configurations in JvmTarget payloads.