Added mergesort
3-way partitioning performance depends on input