quicksort() and partition() written, need testing and cleanup