Properly handle numbers, escape codes, quotes, and nulls

This pull request fixes string escaping for numbers, escape codes like \n and \t, quotes (the CSV 'standard' specifies "" to escape a "), and nulls. We've also fixes a memory leak.