cleanup, TODO: figure out qsort approach for list