code: public K key() {
      if (jc.hasNext()) {
        return jc.key();
      }
      if (!q.isEmpty()) {
        return q.peek().key();
      }
      return null;
    }
docs: Return the key for the current join or the value at the top of the
  RecordReader heap.