more working towards a functional csv parser