Use the central dir instead of the local file header (+ other patches)

This fixes 3 issues :
* ```folder()``` should be like ```remove()``` : without any argument, just return ```this```.
* when generating a zip file, the "is a directory" flag wasn't set.
* reading nested zip files with data descriptors didn't work. The fix don't try to read/guess the size of the compressed data (we know it from the central dir), it should help the issue #30.

See the commit messages for more details.