bugfix: calculate the offset to start of next day correctly.
bulk of functional core imperative shell refactor!
Merge branch 'functional_core_imperative_shell'

Conflicts:
	reporter_watcher.js
logging improvements.
clear interval, to be cautious.
don't do anything special if the file you're waiting for hasn't shown up.