code: public M readNext() throws IOException {
      byte[] blob = readNextProtoBytes();
      return blob == null ?
          null : protoConverter_.fromBytes(blob);
    }
docs: Returns next deserialized object. null indicates end of stream or a
  deserialization error. Use {@link #readNext(BinaryWritable)} to
  distinguish betwen end of stream or deserialization error.