This requires the client code to first collect the permitted CSV fields and use data_csv_init to pass them to the CSV builder.
Adds a new interface for constructing, printing and releasing data_t* structures. The data structure describes typed hierarchical data (much like json) and then provides a function for dumping it to a file descriptor. It comes with a small test.