fix connection queue deadlock
fix connection queue deadlock

The dispatcher queue processor (dispatch_pending) has a lock
around handling the queue entries, but this handler can call the
queue_connection method indirectly through the lib dbus
dbus_connection_dispatch() function, which will deadlock.

This change pulls the connection processing out of the lock
and only locks around adding/removing items from the queue.

karlredgate/dbus-cpp,karlredgate/dbus-cpp,karlredgate/dbus-cpp,karlredgate/dbus-cpp