- mbufs can now represent holes, although support is only partially
  plumbed through the mbuf routines - enough to serve soreceive() plus
  some low-hanging fruit.

- tcp reassembly in passive mode now adds holes to the receive sockbuf
  efficiently using the new mbuf hole support.

- a new flag, UINET_MSG_HOLE_BREAK, can be passed to uinet_soreceive()
  to cause it to return when it encounters a real-data/hole boundary.
  If UINET_MSG_HOLE_BREAK is set in the flags after uinet_soreceive()
  returns, the read buffer contains hole fill, otherwise it contains
  real data.

- reassembly deadline timer overhead has been reduced somewhat, and
  the deadline timer is no longer reset when it should not be.