pub async fn run_server(config: ServerConfig) -> Result<(), Box<dyn Error>>
Runs the HTTP server.
This function starts the server and blocks until shutdown.