Adds support for editing application Menus to JS

* adds support for Adding top level menus, menu items, checkable menu items, sub menus, etc.
* implements support for place a menu item at a particular location on a menu, or before or after another named menu item
* updates to clipboardExample.js to demonstrate how to replace the application clipboard elements
* menuExample.js shows how to use advanced features

closes #1732