mergesort multithreaded