More work towards a clean shutdown

The QAspectJobManager doesn't really need to be public now I think but
as it still is let's make the base class have it's own private class
that inherits from QObjectPrivate.

The ThreadWeaver threads all get cleaned up cleanly upon shutdown.

When trying with cylinder-cpp with all the rendering stuff in main()
commented out, we consistently get the crash in QFontCache. With the
rendering stuff enabled there is also an assert inside the swapbuffers()
call. This is because the render thread is not cleanly shutdown yet.

The QFontCache crash is something to do with freeing thread-local
storage. I will continue to investigate.

Change-Id: Ib3ad3ea04ae4859d27f0dd4604b00bc5a38859a1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Release the TLS for the main thread's change queue in the arbiter

This solves the QFontCache shutdown bug. Now I think all that is left
it to shutdown the render submission thread cleanly.

Task-number: QTBUG-42353
Change-Id: If17c62680302cffa266782261400ae44bfbac612
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>