Typescript Dependency Injection in 200 LOC