Modify sorted-list to take a DestroyFunc in SLCreate to allow better free-ing, still not 100% for valgrind