Why is it necessary to use callbacks to achieve this? Can't we return execution from the RunCommandsFromFile so that we can do execution directly?