A Streaming CSV Reader for SmashPig

These classes allow the stream processing of CSV files in a 'nicely'
wrapped way.

These were needed so that I could process Adyen reports.

Change-Id: I6cf6656bac25c557f724ea6b296a3adab0243e52