Functional: Added Zip, code improvements

Zip iterator works similar to Python's izip (from itertools).

Separated enumerable and enumerator implementation for filter and map.
Functional: Collection support for Map and Zip