Extract an Instantiator helper class to instantiate graphs

- Create Instantiator helper class, encapsulating logic for turning graphs into providers and instances.
- Make DefaultInjector use Instantiator.