CSHARP-666: Added canonical implementations of IDisposable base and derived classes and structs.