js messages and message handler in place. errors not yet tested.
Merge remote-tracking branch 'remotes/origin/master' into gui