code: public EntryStream<K, V> peekKeys(Consumer<? super K> keyAction) {
          return peek(e -> keyAction.accept(e.getKey()));
      }
docs: Returns a stream consisting of the entries of this stream, additionally
  performing the provided action on each entry key as entries are consumed
  from the resulting stream.
  
  <p>
  This is an <a href="package-summary.html#StreamOps">intermediate</a>
  operation.
  
  <p>
  For parallel stream pipelines, the action may be called at whatever time
  and in whatever thread the element is made available by the upstream
  operation. If the action modifies shared state, it is responsible for
  providing the required synchronization.
  
  @param keyAction a non-interfering action to perform on the keys of the
  entries as they are consumed from the stream
  @return the new stream
  @since 0.2.3