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>
perso, j'aurais monté `escape_value` dans le format. On peut voir que `self` sert à rien ici par exemple.