zip_source rototil checkpoint commit -- XXX does not work yet
- Add functions for each command, use these exclusively.
- Put logic for layered sources into these functions.
- New constructor for layered sources, and new callback signature.
- Use sources for compression in zip_close.
- zip_source_crc can now validate, returning error on EOF for crc/size mismatch.

Known bugs:
- deflate uncompressing resulst in zlib data error.
- deflate compressing gets in tight loop on EOF

--HG--
branch : HEAD
22 files changed