clean up and add zip support