tighten up string lexing - we were being too permissive when trying to check for all valid closed strings with a single case