Implemented a dependency injection container