move dependency injection into a separate file