Split out ReadZip method that doesn't open files

Separates file-opening from file-reading, so that callers that just have an zip.ReadCloser from other means can interpret them as xlsx files.

This is useful if you want to have users upload a file and read it, for instance.

This change also makes some minor style changes.