Add top-down mergesort