Merge change I516c3191 into eclair

* changes:
  Implement data push from scripts.  Fixes the problem where apps would have to poll to monitor a scripts state. Fix bug in StoreState where state could be overridden by the default unless the script used more than one state.