What's the purpose of the SourceFileProvider otherwise? I think we should go through it, since plugins might depend on it.