pub async fn start_server(addr: SocketAddr) -> Result<(), Box<dyn Error>>
Start the WebSocket server with graceful shutdown.