libide: add IdeRunManager and IdeRunner interface
IdeRunner allows us to spawn a program within the runtime. It needs to allow some mutating of path, so building the argv is delayed until as late as possible. (We may need to alter argv0 to gdb and similar in the future).
Showing with 1505 additions and 18 deletions