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
the initialization of the record reader? I agree it's not the perfect name...