Replaced instances of (put blah blah blah) with (setf (get blah blah) blah) in social-net.lisp.
(setf (get ...) ...) is a little more verbose, but not much, and doesn't require
remember how put (defined in cohere.lisp) works.
Added explicit return value of person's groups in put-in-group in social-net.lisp.
put-in-group was returning person's groups implicitly in some cases but not others,
i.e. when the groups argument is non-nil, the last form setfs the person's groups
property, and so returns the new value of person's groups.  This return value
was being used in one place, in make-directed-pair, but it wasn't obvious that
the return value of the setf (formerly put) was intended to be used (leading to
a bug when I tried added something else after that line).  Also, when the group
argument to put-in-group is nil, something completely different happens, which
is OK, but in *that* case, the return value is different.  As it happens, that
case never occurs when put-in-group is called from make-directed-pair, so the
code worked fine.  It just was a bit confusing.  Now there's a separate call
(get person 'groups) at the end of put-in-group, so it's obvious that that's
what's being returned.