Removed a little redundancy
Removed IOExceptions because they aren't really necessary anymore
(println from PrintWriter absorbs it)
Removed IOException from the method in Environment also. It might be a
good idea to separate execute out from Environment
Separation of concerns. Split the code compilation apart from code
generation.
Added support for automagically invoking compiled Methods