allow gtk uv loop integration to work recursively, and not busy-loop when libuv is not "alive"
handle recursive calls to gtk_main correctly, and always call uv_dispatch if the Workqueue is not empty