Do not expose the size of recent_keys to Lisp

That prevents from unintentional crashes if the users
modify the variable with setq or if they let-bind it.

Users can still safely modify the lossage limit with the
command `update-lossage-size'.  For convenience, add
a function `lossage-size' to return the current limit.

* src/keyboard.c (lossage_limit): Do not expose it
to Lisp; make it a static variable.
Keep the current Emacs default (300); accept only values >= 100.
(lossage-size): New function; it returns the current size
of recent_keys.
Rename it from update-lossage-limit (all callers updated);
make it a command.

* doc/emacs/help.texi (Misc Help)
* etc/NEWS
* lisp/cus-start.el
* lisp/edmacro.el
* lisp/help.el:
Update all references with the new name.

* test/src/keyboard-tests.el (keyboard-lossage-limit):
Amend the test.
2 jobs for bug#38796-lossage-limit in 90 minutes and 3 seconds (queued for 7 seconds)
Status Job ID Name Coverage
failed #6507


failed #6508


Name Stage Failure
test-all Test The script exceeded the maximum execution time set for the job
  GEN      lisp/international/ccl-tests.log
ELC lisp/international/mule-tests.elc
GEN lisp/international/mule-tests.log
ELC lisp/international/mule-util-tests.elc
GEN lisp/international/mule-util-tests.log
ELC lisp/international/ucs-normalize-tests.elc
GEN lisp/international/ucs-normalize-tests.log
Pulling docker image gitlab/gitlab-runner-helper:x86_64-f100a208 ...
ERROR: Job failed: execution took longer than 1h30m0s seconds
test-filenotify-gio Test
error: cannot lock ref 'refs/remotes/origin/master': Unable to create '/builds/emacs/emacs/.git/refs/remotes/origin/master.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
fatal: failed to run reflog
ERROR: Job failed: exit code 1