-> splitting rule checks
-> reorganize subject keys frequency based: morw often occurring subjects get smaller int key +O(n log)+O(n)
-> catch Exceptions write to log
still have horrible run time: multiple days for diverse data sets of multiple hundreds of MB