Change filename_ to take a predicate against the filename

Also, add filepath_ for predicating on the whole path.  This mirrors the
distinction between -name and -path in find.