Added support for warning about and skipping files.

Files that do not exist or user does not have read access to
are skipped and users are warned that the file is skipped.
You could potentially also use a namedtuple to make this easier to understand code that consumes this.  That way isntead of returnval[0], returnval[1], client code could say `files[0].num_tasks_failed, files[0].num_tasks_warned`.