tweaks to FileOps and FileAttributes

The FileAttributes class now no longer maintains a reference to its
target FolderItem, rather it stores the absolute path of the FolderItem.
FileOps.ListDirectory now returns an array of FolderItems rather than
and array of strings.
FileEnumerator class is now much more flexible