new feature: execute commands with custom environment