add zip fn for both list and vector