The internal compression seems to be required to be Gzip, but the spec says it's optional?
Besides, this package could use some proper error checking. For faulty directories that point to something that is not Gzip encoded, the Gzip decoder isn't checked for errors and later on causes a nil reference panic. The verify functionality would be very useful if it'd do a lot more checking with helpful messages.