MergeSort added, structure refactored