Was discussing it with Javier. He adviced me to rewrite it in this way.

> [7:23:08 PM] Javier Luraschi: Took a look at the code, we should start by implementing Dispose() correctly. Lets remove the SupressMessage attribute and implement dispose as:
> [7:23:52 PM] Javier Luraschi:     public void Dispose() {
>       if (_storage!= null) { 
>           _storage.Dispose();
>           _storage= null;
>       }
>    }

Though I can't assige *_storage* to *null* because it's readonly.