do not throw when file is removed/renamed

`.watch()` throws an ENOENT when the file does not exist, so make sure it does.
not digging sync usage. let me play around with this for a little bit