Allow semicolons within strings
Allow semicolons within strings

Previously, we were deleting from the `;` to the end of the line
before we did any string parsing,
which meant that something like `.STRINGZ "Uh oh; oh no!"` would fail
because the string parser would only see `"Uh oh` (unterminated).
Now we've moved the comment logic into a later phase of the tokenizer.

This also adds a regression test and a few more comment tests.

WChargin/lc3,WChargin/lc3