Drop support for non-indexable iterators in find* functions (#26095)
Always call pairs(), which will throw an error for iterables which
do not define it. Removing the internal _pairs() function allows
supporting custom types which implement pairs().
Also fix/improve a few docstrings.