Move non-UI logic from compile.js to build.js

This involved:
 - make rebuildOnChange into a setting
 - temporarily disable the "status" which isn't displayed right now anyway

For now this is supposed to be JUST moved, not changed
in any interesting or potentially breaking way.
use console.error to report a failed sbt handler

This way it shows up visibly in the debug spam
Fix build.compile logEvent undefined reference

Need self.logEvent. Also, fix using 'log' for two
purposes.
Include the even more info in sbt handler failure messages
Move most of run.js over to build.js