This commit starts the migration to remove the environment package. It introduced an abstraction that is not being used, and removing it makes the code simpler to maintain. This commit removes all 'exec' related package.
This commit adds and passes context around to (almost) every function. This allows cancelling (almost) every function call globally.
This commit adds a new environment package that manages all calls to the underlying operating system.