Make strings EOL-terminated

Strings are terminated by EOL (except when preceeded by `\`). This change reflects that. As a nice bonus this stops vim from highlighting every line after the cursor when you open a string.
The skip can be simplified to `+\\\($\|.\)+` in all three cases. In PCRE, this reads `\\($|.)`. It matches a backslash at end of line or a backslash followed by any character. It appears to be equivalent to the above based on my testing.