ref: Change many uses of v23.NewServer to use xrpc.New*Server instead.

This is designed to reduce boilerplate and prove out the xrpc interface.
All but about 10 uses were replaced.

Some of the remaining calls are more complicated because the services/dispatchers
currently take the serving address as a construction parameter.

MultiPart: 2/9

Change-Id: Ie9768365a9fb27918d8ddf949b017570c806cf55
diff --git a/lib/xrpc/xserver.go b/lib/xrpc/xserver.go
index cc1f775..30bb7c1 100644
--- a/lib/xrpc/xserver.go
+++ b/lib/xrpc/xserver.go
@@ -41,9 +41,11 @@
 		return nil, err
 	}
 	if _, err = s.Listen(v23.GetListenSpec(ctx)); err != nil {
+		s.Stop()
 		return nil, err
 	}
 	if err = s.Serve(name, object, auth); err != nil {
+		s.Stop()
 		return nil, err
 	}
 	return &Server{s: s}, nil