Refactor CompositeRecordReader to only make a record reader when necessary

Following Raghu's comments on this PR https://github.com/kevinweil/elephant-bird/pull/398 this defers opening record readers until necesary
above two lines are not executed when first record reader is created above (where are 'key' and 'value' initialized?)

It might be simpler to move these to lines there and do something like : 
```
if (!currentRecordReader.nextKeyValue()) {
   currentRecordReader.close();
   currentRecordReader = null;
   return nextKeyValue();
} else {
  return true;
}
```