rework livereload

match what we're doing in datasplice-client - the individual build tasks
aren't responsible for triggering a reload, rather the watcher triggers
the build task and then reloads the page when that is done