add watcher subpackage
implement filesystem watching