Normalized line endings to CRLF
Add save test semantics
Increase accuracy in saving
Add callback invocation after quote encounter

When a quote is encountered, no matter where in the file, the contents of
the quote should be read all the way through.  This idea was not captured
previously, and if an insignificant quote string was encountered, would
split the string up as if it wasn't quoted.
Support for empty lists
Correctly saves foreign characters
Switch to TextWriter for output