ArrayIterator seek cleanup

This pull request replaces #2210. It brings `ArrayIterator::seek` closer in line with Zend.