Add "Insert Variable" to right-click menu

Closes #56.

Add an "Insert Variable" menu item to the right-click menu for cells that
have variables enabled.  This contains sub-menus for each defined variable
group in addition to one listing all current variables.

Utility functions InsertVariableMenuBuild and VarNameFromMenuTag handle
most of the work interfacing the Variable Manager to the menu.  MenuBuild
just added a single menu item that InsertVariableMenuBuild will look for.
MenuDo just calls VarNameFromMenuTag to interpret any tags starting with
"USERVAR_INDEX_" and places the correct variable name into that cell of
the table.
Update VariableDelete for VariableGroups usage

VariableDelete will also remove given VariableName from all groups.
Merge remote-tracking branch 'origin/master' into Add-Variable-Menu
Revert "Update VariableDelete for VariableGroups usage"

This reverts commit 8d3144792bcdc194c795cb5d06c914cf4c2445b9.
Merge remote-tracking branch 'origin/master' into Add-Variable-Menu
Add "Insert Function" menu to right-click

"Insert Function" menu parses the User Defined Functions [UDF] field for
all function templates, generates a set of tags/items for them, and takes
care of building & inserting a menu item where appropriate.

Implementing the function menu as a class allows it to process the UDFs
only once and keep things static until further changes are made. This
keeps the overhead related to processing the UDF string small.

Needed to add a reference to the class to the MenuDo, which involved
changing the SetListRefs typedef, which touched every copy of MenuDo.vi

Moved both "Insert Variable" and "Insert Function" related VIs to the
codes/Utils/InsertMenu/ directory to help keep things tidy.
Add "digital preview" functionality to PreviewCell

-- MenuDo checks if clicked column can be downcast to DigitalCol and
sends "Digital?" flag to PreviewCell.
-- PreviewCell coerces to 0 or 1 if Digital? is set True.
-- Also fixed non-rampable preview to show entire time window.
Delete var. from Group when deleting from Manager

Fixes #59.

Added a method to VariableGroup that deletes a variable (if found).  Then
called this from inside VariableDelete.vi to purge VariableGroups of the
deleted variable.
Correct editing variable behavior

Address the issue #59.  This commit should have all desired behaviors
when editing and deleting variable.
Merge branch 'Fix-Variable-Group'
Added Arduino device UI elements.

Init Device and Display info are now fully implemented.
Added Arduino device to the Implemented Devices ring.
Merge branch 'master' into SetList-Arduino