add docstring explanation for how heapsort works