Rudimentary Program Parser

This is a very rough but working way to analyze the program. It takes
into account that the user is writing the program very well. (i.e.
spaces after the method name and before the parameters). We will use
this until we can try and make it more robust. Should be good enough to
start playing with the cases.