We shouldn't ever fully skip the file mode check.  Long story short, we don't want to confuse a symlink with a file if the WorkingTreeIterator subclass can actually detect symlinks (and I hope to have that in the future).

The basis of the checkFilemode flag is only to ignore a difference in the executable bit of the file.  Any other type of difference must be honored as different, even if checkFilemode was false.