This adds a --sort option which makes cp pass a comparison function to
FTS, ensuring that sources are visited and traversed in a predictable
order. This will help make certain test cases more reliable.
While here, add GNU-compatible long options where appropriate, fully
switch boolean variables from int to bool, and clean up the manual page
a little.
Sponsored by: Klara, Inc.