sort list with merge sort