input: def create_environment_object(path: str) -> 'Environment':
      """
      Create an environment object that can execute and analyze Python code. The environment includes a set of predefined global variables and functions, as well as the ability to add additional global variables. The environment can execute Python code and analyze it for variable usage and imports. The environment also includes a stdout object that can be used to capture and display output from executed code.
      
      >>> env = create_environment_object('/path/to/directory')
      >>> env.execute('test.py', 'print("Hello, World!")')
      Executing test.py False
      varsed used: ['print'] set: [] imported: set()
      """
      return Environment(path)
output:     class Environment:
          def __init__(self, path: str):
              self.path = path
              self.globals = {}
              self.stdout = []
          
          def execute(self, filename: str, code: str):
              print(f"Executing {filename} False")
              exec(code, self.globals)
              used_vars = []
              imported_modules = set()
              for var in self.globals:
                  if var in code:
                      used_vars.append(var)
                  if isinstance(self.globals[var], type(importlib)):
                      imported_modules.add(var)
              print(f"varsed used: {used_vars} set: [] imported: {imported_modules}")