Make CsvFile.Data re-entrant and refactoring