Add an environment struct and associated functions
Filling in the eval function...