From discussion in #83. It would be convenient/coherent to have a MynaApp class function that defines some default behavior for launching the main process command based on the specified MPI options.
That way each app class could just call the function (e.g., self.execute_with_app_settings(cmd)) and it would handle assembling the command considering input arugemnts (overwrite, batch, np, mpiexec, and mpiflags), launch a subprocess, and return a process ID. Currently it is up to each app, and there is some different behavior in how the batch flag and other arguments are processed.