stop claiming Twitter is sole doc author. fix sphinx warnings

This change started out as fixing up a couple of (unused) Sphinx-doc config settings; If we ever exercised those settings, they woulda claimed Twitter was sole docs author. Not true nope nope nope.

While making sure that I didn't break Sphinx, I went on a warning-squishing rampage.

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

Reviewed at https://rbcommons.com/s/twitter/r/729/
Move all remaining uses of t.c.contextutil to pants.util.contextutil.
Get rid of the t.c.contextutil dep entirely.

- Cleaned up a stray use in code that got committed after my previous change.
- Also cleaned up style in that code. Will ding code-reviewer for not addressing.
- Fixed some missing deps.
Validate that junit_tests targets have non-empty sources

- Validate the sources parameter to JavaTests
- Test that nil/empty/unmatched-globs for sources are disallowed

Testing Done:
new test added for validation

Reviewed at https://rbcommons.com/s/twitter/r/619/
Followup fix for https://rbcommons.com/s/twitter/r/619/
Make the ivy utils test work. It previously didn't have a BUILD target
and so never ran.

Also add a couple of missing deps.
Also rearrange some deps alphabetically.
Followup fix for https://rbcommons.com/s/twitter/r/619/
Restore Context after mocking it for tests (fixes CI); fix dep

Testing Done:
./build-support/bin/ci.sh

Reviewed at https://rbcommons.com/s/twitter/r/731/
Fix bad dep.

Testing Done:
CI spinning here: https://travis-ci.org/pantsbuild/pants/builds/30800681

Bugs closed: 392

Reviewed at https://rbcommons.com/s/twitter/r/742/
Move code out of goal/__init__.py into goal/goal.py.

We want all our __init__.py files to be empty, and this one actually
illustrates why: the target containing __init__.py depends on phase.py,
and has that dep explicitly in the BUILD file. However you can't load
phase.py without executing __init__.py, so there's also an implicit
dep in the other direction that you can't express in the BUILD file
without causing a circular dep.
Squashed commit of the following:

commit 3ce9ca2871770bb5fc57bd81d7ebbb51e433c80c
Author: John Ioannidis <jioannidis@twitter.com>
Date:   Tue Jul 8 01:58:42 2014 -0400

    Added cobertura coverage
Merge branch 'master' of https://github.com/pantsbuild/pants
Fixup long-missing pants_exe and goal deps exposed by a cleanup of other deps.

Testing Done:
Travis CI away here: https://travis-ci.org/pantsbuild/pants/builds/30806546
Local test kept timing out on package downloads.

Bugs closed: 393

Reviewed at https://rbcommons.com/s/twitter/r/745/
Update contributors guide for rbt fixes

Account for the closed `rbt` bug in the contributors guide.

Reviewed at https://rbcommons.com/s/twitter/r/738/
Got ivy to map in javadoc and source jars for pants goal idea.

This involved a fair amount of finagling with conf variables spread across ivy_* and ide files,
and some changes to the ivy mustache. The mechanism by which confs are currently passed around
does not seem very robust. The whole system would probably benefit from some refactoring to
abstract away ivy's inner workings and streamline generic mapping settings; it would be nice to
have an abstract interface for mapping jar files. This could  also make it easier to deal with
failing downloads, parallelization, or using a different jar mapping tool, but all that can
wait for an entirely different review.

Also cleaned up some style issues that got missed in the last patch for the idea goal.

Don't do extra work if no one wants sources.