BlackboardClient no longer creates a new thread if nothing has changed
to the subscriptions list. Also added a null check when unsubscribing
to guard against situations where creating the thread has failed.