Actually I don't see that this factory method is useful. Different class loaders won't often be required to be specified. I think to avoid confusion we should always provide the index constructor. Indexes are expensive to create. We should deprecate the default constructor.