Parse more possible characters

Includes macro-chars like " and #, which previously failed. This doesn't
exclude invalid characters like \o98765, \u12, or \nothing - the reader
will need to catch that for now (similarly to numeric validation).
Handle characters followed by non-whitespace token
Handle whitespace as part of a character
Allow parsing long strings and regexes
Handle regexes with spaces
Merge pull request #12 from trptcolin/regexes_with_spaces

misc. grammar fixes