Return plausible isReadable() default impl for ext storage

When an ext storage doesn't implement isReadable(), always returning
true made the file scanner believe that the file exists and creates a
cache entry with the size zero.

This fix makes the default impl of isReadable() use file_exists().

Backport of a49e873d3fa513136bfdf1d71bbc2bbcd61d3650