Passed test: "An environment should store variables and provide lookup."
Passed test: "When looking up an undefined symbol, an error should be raised."
Passed tests:\n"The `extend` function returns a new environment extended with more bindings."\n"Extending overwrites old bindings to the same variable name."\n"The extend method should create a new environment, leaving the old one unchanged."
Passed test: "When calling `set` the environment should be updated"
Passed test: "Variables can only be defined once."