Cache by both the path and the ignored-globs

If the ignored-globs changes for some reason then the cache that is used
was based on the path but contained files filtered by the previous
ignored-globs.  This uses a composite key in the cache.