Updated the AST parser to ply the nodes with line numbers, in addition to breaking out the code into smaller more manageable chunks