Interesting case. I found that we should process the canonical type names where
we were not before. This resolves all typedefs and should be be more
accurate in the future. When we process the canonical type we need to ignore
the processing of the non-canonical type. We set a flag after
the canonical type is processed to ignore any type that is processed after.
refs #198
We already parse the string character by character escaping newlines, tabs, and
other special characters. In the case of these quotation marks, we replace them
with the ASCII single and double quotes.
refs #134