Rework artifact cache config.

Now it's all in pants.ini and the confusing flags are deprecated.

Auditors: pl
Implement rebase more carefully.

Simply deleting lines referencing java home was obviously broken,
as it didn't modify the "items: " line appropriately...

Also fix a bug related to artifact caching of analysis file.

Auditors: pl
Enable the two basic artifact cache flags as overrides.

Auditors: pl
Fix bug in read_write_artifact_cache.

Auditors: pl
Conform to the latest sbt analysis format.
Bugfixes around new sbt analysis format.
Symlink all jars, for path uniformity.

Also simplify ivy stuff a little.

Auditors: pl
Fix workunit parent assignment issue.

Previously, even when passing in an explicit parent,
the workunit would get incorrectly set as the current workunit
for the calling thread.

Also make sure symlinking of ivy resolve jars happens
after we attempt to cache a classpath referring to those
symlinks.

Auditors: pl
Fix spurious missing jardep messages.

Also map jar symlinks when interpreting the ivy report.

Auditors: pl
Ensure jar symlinking even when reading from artifact cache.

Also gets rid of a couple of superfluous members of IvyUtils.

Auditors: pl
Fix spurious missing jar deps messages.

Happens on linux when the ivy cache is under
a symlink.

Auditors: pl