The CsvDialect class just wasn't working, and upon reading the docs on
the standard csv module, a vastly simpler solution became obvious. So
now I'm just using simple dictionaries to represent CSV dialects.