Cleanup search tests.
Rename Ignorer to PathFilter
isFileIgnored and isDirIgnored -> isPathIgnored

They had duplicate code.
Ignores and path inclusions are closer to .gitignore behavior

Also refactor. Inclusions and exclusions now have the same code paths.