simple and in-place quicksort