Merge Sort with Recursion