Use FastCSV

This is an experimental replacement of CSV with FastCSV. So far, tests indicate that CSV parsing is dwarfed by `#build_formats`, so #103 is the priority. FastCSV doesn't yet error on inconsistent line endings. There's an open issue for that. https://github.com/opennorth/fastcsv/issues/6