ChunkedIterator for Traversable

Using the ChunkedIterator on a Traversable is currently broken because internally the class accesses the inner iterator (which can be a Traversable) directly but wrongly treating it as an Iterator.

This pull request contains a test to demonstrate that ChunkedIterator is currently broken when used over a Traversable.

The issue is then fixed by accessing the parent instead of the inner iterator.

The flaw was first noticed in https://github.com/guzzle/iterator/pull/2 and https://github.com/guzzle/iterator/commit/eb743f5622252ac3c3441bab203e3e3f9268f581#commitcomment-4009637 and an earlier pr has been brought up (#415), however the analysis was wrong that Traversable could not be supported.