Fix file state tracebacks when source is a list

If file.managed state has a source param which is a list, and none of the URIs in that list are found, a traceback occurs. This pull request modifies salt.modules.file.source_list to raise an exception when source is a list and no matches are found, and then catches that exception in the file.managed state so that Salt can return gracefully with a False result and meaningful error message.

Additionally, the issue existed in file.recurse, and is also fixed in this pull request.