This required extending the UnicodeCSVWriter to be able to deal with file-like objects as well. This is used to create downloadable CSV files in memory.