clarifying iterator trait documentation

I found these things to be ambiguous, or at least worth stating explicitly to reduce the amount a user/developer needs to think about the API.
As above, "should" is not appropriate here.

> Returns an element at an index, or `None` if the index is out of bounds.