If s has type System.IO.Stream, why does ((IDisposable) s).Dispose()
work while s.Dispose() fails? The error is:
error CS0117: 'System.IO.Stream' does not contain a definition for
'Dispose'
This seems impossible since Stream implements IDisposable.