Implemented the observer pattern instead of passing a simple TextWriter to the watcher classes.