parallel runs without error (but still wrong)

Provide 3 fixes to allow the parallel algorithm to run without
exception:

1. Do not create a masks array longer than the given cardinality,
2. Use toArray(T[]), not (T[]) toArray(), which throws a
ClassCastException, and
3. Use the provided label parameter, not the stored subcontext one;
this was causing an ArrayIndexOutOfBounds error.

Also update the parallel flag mechanism and add an extra test for
testing the parallel algorithm.
fix possible bugs in Lattice

emptyContext should not be static, in case we run more than one
classification at the same time. Also, to prevent any possible
loitering, set the `next` pointers on removed Supracontexts to `null`.
parallel test passes

The `intersectionFinal` method was missing a key statement which
actually combined Supracontexts. Fix this and the parallel test passes.
Do refactoring where appropriate, as well.
remove unneeded constants