Some clean-up of tests
Adding Java versions and associated tests
Small spacing fix
Spacing fix
Style fixes
Exclude jopt from kafka dependency.

Kafka uses an older version of jopt that causes bad conflicts with the version
used by spark-perf. It's not easy to remove this downstream because of the way
that spark-perf uses Spark (by including a spark assembly as an unmanaged jar).
This fixes the problem at its source by just never including it.
Adding improved error message when multiple assembly jars are present.

This can happen easily if building different hadoop versions.
TimeTrackingOutputStream should pass on calls to close() and flush().

Without this fix you get a huge number of open shuffles after running
shuffles.