message: chore: Only emit server message updates when there are listeners
  Otherwise we'll get lots of errors about remote event sender not
  having any subscribers
diff: @@ -75,10 +75,12 @@ async fn run_server<ConnectorType>(
  match server_clone.parse_message(client_message.clone()).await {
  Ok(ret_msg) => {
  if let ButtplugClientMessage::RequestServerInfo(rsi) = client_message {
  + if remote_event_sender_clone.receiver_count() > 0 {
  if remote_event_sender_clone.send(ButtplugRemoteServerEvent::Connected(rsi.client_name().clone())).is_err() {
  error!("Cannot send event to owner, dropping and assuming local server thread has exited.");
  }
  }
  + }
  if connector_clone.send(ret_msg).await.is_err() {
  error!("Cannot send reply to server, dropping and assuming remote server thread has exited.");
  }
  @@ -102,6 +104,7 @@ async fn run_server<ConnectorType>(
  break;
  }
  Some(msg) => {
  + if remote_event_sender.receiver_count() > 0 {
  match &msg {
  ButtplugServerMessage::DeviceAdded(da) => {
  if remote_event_sender.send(ButtplugRemoteServerEvent::DeviceAdded(da.device_index(), da.device_name().clone())).is_err() {
  @@ -115,6 +118,7 @@ async fn run_server<ConnectorType>(
  },
  _ => {}
  }
  + }
  let connector_clone = shared_connector.clone();
  if connector_clone.send(msg).await.is_err() {
  error!("Server disappeared, exiting remote server thread.");
  