Incremental commit.  Add placeholder rbtree.  Begin client-svc integration.
Incremental commit.
Fix service registration after svc_tli_create.

Don't set xport->xp_port to (u_short)-1 because it "is the
rendezvouser."  Instead, since we've already called getsockname,
get the port from the address, if it is an inet (or inet6)
socket.

Fix ipv6.
Block in new svc_lookup.
Oops.  Assign ops2.xp_getreq in svc_vc.c as well.
Add prototype for __svc_cleanidle2.  Add ops in svc_vc_control to get/set xp_getreq.  Take the ops_lock.
Implement svc get/set xp_getreq for svc_dg.c.
svc_getreq_default cleanup, rpc_msg duplex note.  Former needs de-stackification.
Add rpc_dplx, contains xdrs_dplx_msg (not yet complete).  Fix
clnt_vc_fd_lock, at least partly.  Move epoll structures out
of line in SVCXPRT structure, add memory management for them.
Added missing cast in getsockname conditional port logic, but
still have a strict aliasing warning there.
Remove dreck.
Typographic change s/XPORT/XPRT/ in flags.
s/size/sz in new create.
Duplex create routine renaming (prep for move to svc_dplx.c and clnt_dplx.c.
Incremental.
Clean up clnt_vc_recv.
Conditionally block events across client calls when mode is
duplex.  With this change, non-callback workflows work consistently,
from duplex client.
Add matching svc_vc event blocking routines.
Fix locking and event block flags values.
Block in REPLY cases.  There is junk in the epilogue for tracing.
Move rpc_msg allocators.