Adding support for service factories in IServiceDescriptor

Fixes #64