Add Instantiator interface
Make Satisfaction return List<Desire>
Make InjectionException checked
Delete InstantiatorSource in favor of Map
Rename Instaniator method
Add missing license headers