zip function

A function that takes two lists and returns a list of pairs. The idea can easily be extended to take N lists and return a list of N-tuples.