Add tests, and fix empty zip() (it would enter an infinite loop)
Add docstrings and remove unneeded __iter__ implementation