Add support for soft-killing child processes
Implement the 'Signalable' trait for 'Child' in order to provide a new method 'soft_kill()' as an alternative to 'kill()'.
This adds support for graceful termination of a child process by sending the SIGTERM signal. The SIGKILL signal is used as a fallback solution if the process is still active after waiting a user specified amount of time.
The main goal is to improve the scenarios where the hanging tests are being executed via crosvm, which requires a proper handling of virtio-vsock related operations for initialization and release.