Fix Enumerable#cycle; ref #1933

* add multi value support
* `each` method may not rewind the sequence so that `cycle` should save elements