insertion sort seems to work