Moved Zip into Range.hpp and extended the functionality for manipulating ranges significantly. Added tests for that functionality and used it in Poly.