store parse tree in program global

Only way to get it out of yacc :(

Now that we have a parse tree, we'll be able to run our other passes on
it.

This patch also moves the 'print()' action into main.go.