Non-extensible Sealed

It occurs to me that our explicit list of types excepted from the virtual member rule could be eliminated by just marking such types as `sealed` instead. The only type for which this might be debated is `Repository`, but my thought is that any reason to subclass it could be handled by a proxy that implements `IRepository`.

Also, an `[Obsolete]` purge.