avocado.utils.process: wait() after terminate() and kill()

Since we are sending terminate/kill signals to the processes,
we might as well wait on the processes after that. This
way we are sure to have a result object formed after
terminating or killing a process.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
selftests: Add functional tests for SubProcess.

Add functional tests for the class avocado.utils.process.SubProcess,
regarding the methods start() and run().

Even we already use it for other tests, we must have
tests for this own basic feature.

Signed-off-by: Rudá Moura <rmoura@redhat.com>