Implements takeWhile, dropWhile, cycle. Improves zip.

Implements takeWhile, dropWhile, cycle. Makes zip work with any number of arguments. All tests are passing.