Mergesort, written as a stack operation, in C.