New function: one-key-get-slots

Also change name of structure one-key-menu to one-key-menu-struct

Altered items:
one-key-menu, one-key-get-slots
Some code reformating/reindenting

Altered items:
one-key-menu-struct, one-key-highlight-menu,
one-key-update-buffer-contents, one-key-menu
Add buffer arg to one-key-update-buffer-contents

Add BUF arg to one-key-update-buffer-contents, with default
value one-key-buffer-name

Altered items:
one-key-update-buffer-contents
Update version in header docs
Alter one-key-types-of-menu variable

Return one-key-menu-struct as third element, and remove subsequent
elements

Altered items:
one-key-types-of-menu
Change one-key-menu to use new one-key-menus struct

Also change one-key-update-buffer-contents: remove title-string arg.
Add items to one-key-menus struct (these will probably change again
in the near future).

Altered items:
one-key-menus, one-key-current-menus, one-key-update-buffer-contents,
one-key-menu
Code to build accessor functions for one-key-current-menus

Also slight change to one-key-update-buffer-contents

Altered items:
one-key-menus, one-key-current-menus, one-key-update-buffer-contents
Incremental changes to move towards new data structure

Altered items:
one-key-menu-struct, one-key-menus, one-key-update-buffer-contents,
one-key-menu
Code for creating current menu accessor functions
Alter one-key-command to work with new data structure

Altered items:
one-key-command
Add comments to auto-created functions

Few other minor changes

Altered items:
one-key-menu-struct, one-key-get-menus-for-type, one-key-menu
Fix one-key-command

Make sure that one-key-execute-binding-command is called
in the associated buffer instead of the one-key buffer.

Altered items:
one-key-command
Bugfix: one-key-get-menu-type

Also fix documentation for one-key-prompt-for-menu.

Altered items:
one-key-get-menu-type, one-key-prompt-for-menu
Bugfix: one-key-menu

Fix error check for one-key-current-menus

Altered items:
one-key-menu
Add new arg to one-key-menu-window-toggle

If NOCHANGE arg is non-nil then use the current state of the toggle
sequence instead of moving to the next one.

Altered items:
one-key-menu-window-toggle
Replace calls to set-window-state with window-toggle

Replace calls to one-key-set-window-state with calls to
one-key-window-toggle where appropriate.

Altered items:
one-key-special-keybindings, one-key-menu
Fix one-key-update-buffer-contents for new data structure

Also move special key initialization into one-key-menu command,
and add new item 'specialkeysymbols' to one-key-menu-struct.

Altered items:
one-key-menu-struct, one-key-update-buffer-contents, one-key-menu
Rename filtereditems to displayeditems

In one-key-menu-struct and associated accessor functions rename
filtereditems to displayeditems.
Also update documentation for one-key-menu-struct.

Altered items:
one-key-menu-struct, one-key-menus, one-key-command,
one-key-update-buffer-contents
Fix to one-key-update-buffer-contents

Altered items:
one-key-update-buffer-contents
Use one-key-eval-if-symbol instead of (if issymbol..

Altered items:
one-key-update-buffer-contents