Create Result class for returning warnings

- CsvParser.parse now returns CsvParser::Result
- change extra fields warning column to be consistent with the raised
  exception