Support for named registration via Autofac

Useful when using multiple cores as you can ask the container to resolve by name rather than by document type.

If you have multiple cores each with the same document type, then you have to use named registration.

For example, if you have two cores with the same document type `Dictionary<string, object>`:

````c#
var builder = new ContainerBuilder();
var cores = new SolrServers {
                    new SolrServerElement {
                            Id = "entity1",
                            DocumentType = typeof (Dictionary<string, object>).AssemblyQualifiedName,
                            Url = "http://localhost:8983/solr/coreEntity1",
                        },
                    new SolrServerElement {
                            Id = "entity2",
                            DocumentType = typeof (Dictionary<string, object>).AssemblyQualifiedName,
                            Url = "http://localhost:8983/solr/coreEntity2",
                    },
                };

builder.RegisterModule(new SolrNetModule(cores));
var container = builder.Build();

var solrOperations1 = container.ResolveNamed<ISolrOperations<Dictionary<string, object>>>("entity1");
var solrOperations2 = container.ResolveNamed<ISolrOperations<Dictionary<string, object>>>("entity2");
````

When resolving by name, the Id assigned to each SolrServerElement is the name to use.

As it stands right now this isn't possible with the current implementation.