pub async fn serve(addr: SocketAddr, state: AppState) -> Result<(), Error>
Bind a listener and serve until the OS signals shutdown.