added Stack.run method to provide a forEach with events