storage.py: use 'with' to definitely close our opened files

Previously the code was just doing 'open(...).read()', which blows up
under PyPy. Using 'with' instead allows us to run under PyPy. We have
to import the future, since we're still Python 2.5 compatible.