reduce args to DistributedLattice constructor

Make the labeler contained in `SubcontextList` available via a getter,
and retrieve it that way instead of requiring it as an extra input into
the `DistributedLattice` constructor. Add tests for `SubcontextList` to
test its getters.
make LatticeTest more flexible and extensible

Refactor and use reflection so that one test can involve multiple
datasets and classifications. Instead of classifying a data set with
different lattices and returning these as parameters, provide
constructor objects and their required arguments.
some cleaning/refactoring
add getSupraFromString utility test method

Creating `Supracontext` instances the long way is way too verbose,
so add a utility method that can parse the format given by
`Supracontext.toString()` and turn that into a new `Supracontext`. It
has some limitations because of limitations in Weka's `Instance` class,
but it should be much easier to use. Add a test method for it, as well,
in the same file (is there any better place to put test tests?).