move AST parsing code to separate hsubParsingUtils module in preparation for hsub regex removal