Add a put_back() method to the Peekable iterator.

Sometimes, rather than peek()’ing and then potentialy calling next() to go
past the item you’ve already handled, it’s more convenient to call next()
first and potentially put the item "back" in the iterator, to be consumed
by another part of the code.