making addition just one subclass of a Function type, and storing it the environment