rename ApplicationComponentFactory -> ApplicationComponent