JS: pull out a helper to schedule the update callback to avoid locking problems

Both the selected entity and the scheduled boolean must be accesses in a synchronized
block.  Close the small race that can occur between accessing the entity and causing
the update to be scheduled.

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: Correct infinite loop in the getValueString method for Branch

Signed-off-by: Harry King <harry.king@ausenco.com>
Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: remove the last use of addEditableKeyword

Dumb conversion of the old code, will be revised shortly, but at least we can
remove the CompatInput code now.

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: remove CompatInput

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>
JS: remove the legacy keyword parsing function readData_ForKeyword

Signed-off-by: Harvey Harrison <harvey.harrison@ausenco.com>