Use BytesIO rather than StringIO to wrap opened zip files, since it's
more correct, and StringIO will no longer work this way in Python3.