veyron2/ipc: 3 of n. 'Invoker and Signature' rationalisation.

- implement the changed ipc.Serve signature
- transition all code to use it and ipc.ServeDispatcher
- get rid of the ugliness around calling Serve multiple
  times to publish under multiple names in the mount table
  and instead provide AddName/RemoveName methods.

Change-Id: Ic5edd709d28e2670369986a5b0fce4cd22e3cafd
diff --git a/services/mgmt/binary/impl/impl_test.go b/services/mgmt/binary/impl/impl_test.go
index 8212e1e..a38ef40 100644
--- a/services/mgmt/binary/impl/impl_test.go
+++ b/services/mgmt/binary/impl/impl_test.go
@@ -129,7 +129,7 @@
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
 	dontPublishName := ""
-	if err := server.Serve(dontPublishName, dispatcher); err != nil {
+	if err := server.ServeDispatcher(dontPublishName, dispatcher); err != nil {
 		t.Fatalf("Serve(%q) failed: %v", dontPublishName, err)
 	}
 	name := naming.JoinAddressName(endpoint.String(), "//test")