Connection threads are now background threads

If a connection is opened on a worker thread and then not explicitly
closed, then the RabbitMQ connection threads will prevent the
application from closing normally. i.e. If a thread is created to
dequeue events and then the main window is closed (which should
terminate the application) then the application will still be running in
the background due to the RabbitMQ threads not ending.