enhancements to dependency injection