Fix hang in applications when threadpool thread fails to run.

In the event that a thread pool threads fails to start do not leave it
in the list of running threads which can lead to us waiting
indefinitely for it to finish in MThreadPool::waitForDone(). The fix
is to immediately remove the thread from the list of running threads
if IsRunning() is false immediately after calling start() - see
start() in qthread-unix.cpp. N.B. IsFinished() is false in this
scenario because the thread never started.

When this occurs, either because we've hit the system thread limit or
we've run out of memory QThread (on unix/linux) will print:
"QThread::start: Thread creation error: Resource temporarily
unavailable"

Shortly afterwards the thread calling MThreadPool::waitForDone() would
hang, in the case of the frontend this may be the UI thread in the
MythImage destructor.