A more selective way to improve editing speed



The main idea here is to disable the refresh of the widget tree when it is not needed (ie during most editing) but still allow syncing to be preformed on a character by character basis.

the event "change" is fired from wiki.js, and in the original code a listener was set in  startup.js, to enable the refresh of the widget tree. In this change startup.js listens for a new event, "refreshtree". This is fired at the same time as "change" (in wiki.js) except when disabled (controlled by parameter norefresh). 
In edit-text.js a norefresh parameter is added to the update() function, and can be set by the "input" event handler so that "refreshtree" is not fired (but "change" is still fired). A "blur" handler is added that calls update() without setting norefresh to cause the refresh of the widget tree. 
This functionality is selectable by a option passed into the edit-widget.