Merge Sort implementation & tests