Add Sanity Checks for Join/CoGroup with SolutionSet in Record API

We now check whether the key fields specified for the delta iterations
match those specified when joining/coGrouping with the solution set.
This code is more or less copied from the new Java API.

The Scala API uses the Record API underneath so it is also covered.
Run tests in parallel

This uses the forkCount parameter of surefire/failsafe. This also
changes the JVM memory size for the testing VMs so that more can fit
into memory.

For this to work, NepheleMiniCluster must recognize when it is run in
a parallel testing environment and change ports accordingly. Also
AbstractTestBase and TaskTestBase must prefix temp files with the class
name to prevent name clashes.