csv: Add features

Add the following features:

* Escaping.
* Customization of the CSV format.
* A reader.

Fix #969.

Signed-off-by: Jean-Christophe Beaupré <jcbrinfo@users.noreply.github.com>
triplequotedstring pour éviter les échappements?

    assert out.to_s == """"1","2.0","foo"\r\n"""