add a new zip implementation and fix some glitches
scrap old implementation