Execute_node will stage if the ship hits 0 maxthrust, but it doesn’t have the complex staging logic that the ascent program does for handling asparagus/drop tanks. Should pull that out into some utility code and share it.
Additionally, the burn time calculation does not take staging into account. We need to figure out how much dv is in each stage and how long it will burn for (not an easy task!).