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/