Fix encoding of strings loaded from files.

To do this, ZipWrap must know whether it's reading a binary file (not
to be converted) or a text file (to be decoded as UTF-8 and handled as
Unicode in Python). Add a parameter to ZipWrap.cat() to force all
callers to declare whether they're reading text or binary data.