Add an optional cache argument to the WatchOutput command, and test this
value to determine whether to use cache_command or run_command.