Introducing Context and Dependency Injection