Avoid a compilation warning

* lisp/emacs-lisp/package.el: Avoid a compilation warning by declaring
the `find-library-name' function.
Fix the `with-demoted-errors' calls

* lisp/emacs-lisp/package.el (package-activate-1): Fix the
`with-demoted-errors' calls: the first argument must be a string literal.
lisp/let-alist.el (let-alist): Evaluate `alist' only once.
* registry.el (registry-db): Set default slot later.

This is because its value is not a literal integer.
lisp/let-alist.el (let-alist): Fix wrong parenthesis.
* image.c (svg_load): Fix pointer signedness.
* automated/let-alist.el: New file.
Keyboard interface (C-f10) to `mouse-buffer-menu' (C-down-mouse-1).

* lisp/mouse.el (mouse-buffer-menu-map): Extract from `mouse-buffer-menu'.
(mouse-buffer-menu): Use `mouse-buffer-menu-map'.
* lisp/menu-bar.el (menu-bar-buffer-vector): Extract from
`menu-bar-update-buffers'.
(menu-bar-update-buffers): Use `menu-bar-buffer-vector'.
(buffer-menu-open): New user command, bound globally to C-f10,
provides a keyboard interface to `mouse-buffer-menu' (C-down-mouse-1).
(mouse-buffer-menu-keymap): Use `menu-bar-buffer-vector' to
convert the value returned by `mouse-buffer-menu-map' to a list
acceptable to `popup-menu' for `buffer-menu-open'.