Add extract sample
Beware - Begin mutation
setVar :: Env -> VariableName -> LispVal -> IOThrowsError LispVal
Refactor - Move mutation state
defineVar :: Env -> VariableName -> LispVal -> IOThrowsError LispVal
bindVars :: Env -> [(VariableName, LispVal)] -> IO Env