Implementing ISet<T> multibindings.

* Introducing [Provides(ProvidesType.Set)] for set membership
* Reflection chicanery to support yielding ISet<T>
* So many things had to be touched to make this work.  Too complicated!
* More integration tests forthcoming.