pub async fn run<P: Platform, ConnectFuture: Future<Output = Result<P, ApplicationError>>>(
manager: Manager,
options: Arc<Options<P>>,
connect: impl FnOnce() -> ConnectFuture,
msg_callback: impl Fn(&Message) + Send + Sync + 'static,
shutdown_callback: impl FnOnce() + Send + Sync + 'static,
) -> Result<Handle<P>, DynError>