add start of factory/context and change IFile to use IFileStore instead of IFile