Some examples:
* Joining together to share storage of important data (e.g. several foundations together)
* Auto-renewing/auto-replication of storage (e.g. if a storage provider fails to respond after a certain period of time, content could be automatically replicated to a new provider)
* Automated caching & distribution - a single piece of content uploaded could be automatically replicated to other providers around the world
* Sophisticated storage auctions - let's say you're a storage provider and realize that someone has removed a large chunk of data, thereby freeing up a ton of space. A contract could automatically lower the price for storing on your disks so you're back running at full capacity more quickly.
* Futures contracts - let's say you have a lot of data you know you're going to need for a long time into the future (e.g. 10GB of log data generated every day). You may want more stability in pricing, so you "buy" all the storage now, and are not subject to volatility.
Etc, etc. But the best use cases are the ones we haven't even thought up yet!
Disclosure: I am co-director of Research Development at Protocol Labs.