watcher thread implemented
merging with watcher thread commit