Allow testing of interactivate code paths within BuildStream

The following discussion from !662 (merged) should be addressed:

  • @Qinusty started a discussion:

    I have removed the tests I was prototyping from this branch.

    Further work is required for testing interactive parts of BuildStream

    Tasks:

    • Be able to cli.run() on a separate process.
    • Be able to send signals to such a process.

BuildStream test utils currently provide no utilities for running BuildStream on a separate process. This inhibits the ability to test BuildStream's interactive code paths.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information