Add historical option to completions-sort

Support sorting candidates in *Completions* by the order they show up
in the minibuffer history.

Also add minibuffer-sort-alphabetically and
minibuffer-sort-by-history, which are usable for both completions-sort
and display-sort-function.

* lisp/minibuffer.el (completions-sort): Document 'historical option.
(minibuffer-completion-help): Support 'historical option.
(minibuffer-sort-alphabetically)
(minibuffer-completion-base, minibuffer-sort-by-history): Add.
* etc/NEWS: Announce it.
1 job for master in 8 minutes and 6 seconds (queued for 26 seconds)
Status Job ID Name Coverage
  Normal
failed #77876
test-lisp-inotify

00:08:06

 
Name Stage Failure
failed
test-lisp-inotify Normal
Uploading artifacts for failed job
Uploading artifacts...
test-lisp-inotify-e33f560b/: found 119 matching files and directories

Uploading artifacts as "archive" to coordinator... 201 Created
id=77876 responseStatus=201 Created token=zur8ZHXF
Uploading artifacts...
test-lisp-inotify-e33f560b/junit-test-report.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... 201 Created
id=77876 responseStatus=201 Created token=zur8ZHXF
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 2