Separates DI engine for future improvements.

Closes #8