should we maybe push all the sorter stuff to another file (but in the same package?)