Consistent session method naming.

Inconsistency was in the fact that a new channel was created by calling
session_t::invoke(), but closed with session_t::detach(), while session
itself could be detached with session_t::revoke(). From this point on,
invoke() and revoke() are logically related to channel creation and
destruction, while detach() is the way to disconnect the remote peer.