Adding support for service factories in IServiceDescriptor

Fixes #64
You should add a test verifying that the `IServiceProvider` passed into the factory Func is appropriately scoped.