add zipper
add finished zipper implementation