merge sort non-generic version finished