First spin of a menu subsystem.  This is fairly crude and not well documented but it is a beginning.

A new call has been added to the K400, createMenu() which makes a menu object.  This can be followed by calls to make individual fields inside the menu.

At the moment, the permitted fields are:

item  calls a function when selected
integer  numeric field
number  real numeric field
passcose  numeric pass code
string  text field
list  select one of several
auto  turn on the display of a register when selected
register  edit a named register
exit  leave the current menu when selected
menu  a submenu (finished by a .fin())
Find field in menu heirarchy.

Get and set value functions.
Use a table to locate fields rather than a search.
fix typo
Deprecate saveBot/restoreBot in favour of saveBottom which returns a function that does the restore.  This allows these calls to properly nest which is a necessity for the menuing system.

Add lots of LDoc for the menuing.  Fix a few bugs and add in a few more features.

Add a menu example that uses each of the different items.

Factor out a null function to reduce resouce use a little.

Use the field table values for field functions instead of cached local copies.
Avoid an extra function when starting the menu.
Return an exit status when leaving the top level menu.
Include the menu.lua example file in the LDoc.

Link to this from the top of K400Menu's descriptive page.
Line break the menu.lua link better.
Remove the direct host connection from the menu.lua example.