Explain the semantics of Next() in regards to Value() and Key() in the Iterator interface