Introduce RecordReader interface: The reader that reads the batches of records.
Introduce SortMergeReader: This reader is to read a list of `RecordReader`, which is already sorted by key and sequence number, and perform a sort merge algorithm. `KeyValue` with the same key will also be combined during sort merging.
Introduce ConcatRecordReader: This reader is to concatenate a list of `RecordReader` and read them sequentially. The input list is already sorted by key and sequence number, and the key intervals do not overlap each other.
Introduce FieldStats: Statistics for each field.
Introduce SstPathFactory: Factory which produces new Path for sst files.
Introduce SstFile and SstFileMeta: This SstFile includes several `KeyValue`, representing the changes inserted into the file storage.