[ ] resolve relative file paths (using a FileService instance)
[ ] support custom fetcher function. need to be able to override how relative file paths are resolved, for example the exporter will want to resolve relative file paths with additional http requests to the exporter instead of normal file lookups on the filesystem.
[ ] don't resolve the same remote url twice (caching)
[ ] don't resolve the same relative file path twice (caching)
[ ] support custom resolver function (default just returns the content at the #/hash/path)
This will enable us to pull down a project to our computer, fork it, make changes and merge back into forked project.
Similar to what I do with go when making changes to package.