MergeSort implementation - recursive