move platform-specific implementations of run_process to separate headers