finished merge sort