better insertionSort