One other thing is that I don't use CSV to handle the headers -- my ONLY use of the CSV module is to read a line from the file and break its fields into an array. I know this is kinda dumb
but it is really only about an eight line, simple program with CSV parsing the lines into fields. I'm tempted to abandon CSV entirely and just write a routine that will take a line of csv data and burst it directly