- Handle function, constructor, and constant injectors
- Allow asynchronous injectors
- Easy forking for multiple environments
- Allow specifying dependencies by name (robot leg problem)
- Unfilfilled dependencies are failures, not null
- Allow easy debugging of dependency graph