Refactorings based on initial PR feedback-

- Refactored existing DI tests and unforked cloned tests to allow test sharing.
- Enabled generation with multiple entry points.
- Moved generated file to be beside the entry point.
- Allowed injecting types from the entry point file.