%run-program: Overhaul of asynchronous process spawning

Merged Elias Pipping requested to merge epipping/asdf:run-program-messy-with-rebasing into master

The primary changes made in this branch can be summarised as follows:

  • Employ parameter-error and not-implemented-error
  • Add and use process-info class with a few corresponding getter functions
  • Export functions: process-info-pid, wait-process
  • Add functions: launch-program, close-streams, process-alive-p, terminate-process
  • Unify exit status codes
  • Add tests; unix-specific for now.

Merge request reports