Change Repository API to use injected CompanionLoaderFactory