MergeSort in haskell... the merge part needs to become purely recursive.