Add csv protocol

Protocol to read from, and write to, CSV formatted data.