TBR chat: Move security.Call out of context.T.

This is a companion to the following sequence of changes:
https://vanadium-review.googlesource.com/#/q/topic:ctx_call

Again the purpose is to make our usage of context.T more
consistent, and the JS code is being changed to do the same
thing.

The main change is to get rid of security.GetCall and
security.SetCall.  This means we need to pass security.Call
around explicitly when necessary; rpc.ServerCall includes a
Security() method which returns the security.Call.

Here are the new APIs (none of these included security.Call
before this CL):

Authorize(*context.t, security.Call) error
Grant(*context.T, security.Call) (security.Blessings, error)
Dischargeable(*context.T, security.Call) error
Caveat.Validate(*context.T, security.Call) error
security.RemoteBlessingNames(*context.T, security.Call)
security.LocalBlessingNames(*context.T, security.Call)

MultiPart: 5/7

Change-Id: I365fffd1436a071b4bf4041254593d0ce758585d
diff --git a/clients/shell/go/src/v.io/x/chat/channel.go b/clients/shell/go/src/v.io/x/chat/channel.go
index 571a9fb..c133ea2 100644
--- a/clients/shell/go/src/v.io/x/chat/channel.go
+++ b/clients/shell/go/src/v.io/x/chat/channel.go
@@ -67,8 +67,8 @@
 }
 
 // SendMessage is called by clients to send a message to the server.
-func (cs *chatServerMethods) SendMessage(ctx *context.T, _ rpc.ServerCall, IncomingMessage string) error {
-	remoteb, _ := security.RemoteBlessingNames(ctx)
+func (cs *chatServerMethods) SendMessage(ctx *context.T, call rpc.ServerCall, IncomingMessage string) error {
+	remoteb, _ := security.RemoteBlessingNames(ctx, call.Security())
 	cs.messages <- message{
 		SenderName: firstShortName(remoteb),
 		Text:       IncomingMessage,
@@ -136,7 +136,7 @@
 // openAuthorizer allows RPCs from all clients.
 type openAuthorizer struct{}
 
-func (o openAuthorizer) Authorize(*context.T) error {
+func (o openAuthorizer) Authorize(*context.T, security.Call) error {
 	return nil
 }