Use a GThreadPool instead of GThread and GAsyncQueue (shorter code, thread sharing)
Some scheduler cleanup...