implement Storage.open()