rewritten the SortRunner and all the Sorters

- now the SortRunner takes care of all the sort runs
- original SprtList removed from Sorter (now stored in SortRunner)
- fixed problem that the first run was not added to the metrics (was actually the last run...)
some minor stuff

- moved validation of sorted SortList to SortRunner (was in Sorter)
- reorganized SortList code a bit