Some improvements to the query parser

It handles more flavors of whitespace, permits " as string delimiters, and fixes parsing of group-by.

I added tests for the first two features, but couldn't figure out where a test for the last would go.