Issue #1813762 by ParisLiakos, Jose Reyero, YesCT, japicoder, attiks: Introduce unified interfaces, use dependency injection for interface translation.