Pixhawk uses FMU and IO to enable all outputs. The in-flight restart restore has to be fleshed out, yes - If you like I could give you pointers. We could start by using the FRAM on FMU to store a flight status flag and evaluate that on reboots.