Add a Quicksort implementation.

Quicksort makes different tradeoffs than the existing merge sort:
It does not allocate, but is not stable.

Original implementation by @pcwalton:
https://github.com/mozilla/servo/commit/3764c3c49f