I think there should be a comment either here or in `Directory._clearCachedContents()` explaining why we default to clearing all its immediate children too.  (It's because of the unusual way Mac watchers notify us of file content changes during big churn like `git checkout`, right?)