merge sort in place