avocado.job: Fix deadlock in TestRunner.run() [v3]

multiprocessing.Queue().put() is asynchronous and in case the test died
critically before the put() was executed, TestRunner.run() waited for
infinity for early_state. This patch uses
multiprocessing.queues.SimpleQueue(), where it's guaranteed that after
executing put() the data are already in the SimpleQueue.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>

v1: #286
v2: https://github.com/avocado-framework/avocado/pull/289

Changelog:

    v1: Use multiprocessing.queues.SimpleQueue as queue instead of executing
        the process again
    v1: Reorganize imports (sorry, Eclipse did that automatically, but now it's 
        sorted alphabetically ;-) )
    v2: add check for ps.is_alive() (reduces abort discovery latency 2.2s=>0.1s)
    v2: import style cleanup