Modified get_comma_sep_exprs_from_balanced_string in ParserHelp.py to return the location of the closing balanced pair.
Fixed PreProcess to do macro substitutions correctly.
Added some unit tests.
Macros are now handled correctly.