Tweaks to FileSearcher and FileEnumerator

FileLister now descends into all subdirectories rather than only those
matching the pattern; FileLister now supports either breadth or depth
first searches.