File refactor local cleanup

removes dependence on remote file provider setting mtime and such on the resources (which was removed in previous patch). Also de-mocks and simplifies the tests.

Made a note to add "conditional get" behavior back in later, but skipping that for now in the interest of getting this overall patch merged.