set up skeleton
complete quicksort()
fill in all functions; not tested
move choose_pivot() call into sort()
infinite loop; sad day