Use recommended approach for implementing IDisposable