kernel: import pci_find_class() from FreeBSD
kernel: Import vm_mmap_to_errno() from FreeBSD
kernel: Remove some HW_WDOG remains.
kernel: Remove a no longer used extern declaration.
start adding .Mt to email addresses in man pages

This covers share/man/man[1579]. It also consolidates multiple lines
into one, removes spurious double quotes in names or emails,
and changes punctuation where appropriate. The target style is:
.An Name Aq Mt name@somewhere.tdl
add .Mt to man pages in usr.bin/
add .Mt to man pages in bin/ games/ sys/ tools/
Remove some more unused externs.
kernel: Import unrhdr function family from FreeBSD
kernel: Import bitcount16() from FreeBSD
kernel: Add DRIVER_MODULE_ORDERED macro
kernel: add vm_page_unhold_pages()
kernel: Implement copyin_nofault and copyout_nofault

Inspired-from: FreeBSD
kernel: Add PROC_LOCK and PROC_UNLOCK

Inspired-from: FreeBSD
oce: Don't clear M_PKTHDR when create mbuf chain
socket: Avoid possible race between netmsg_so_notify() and sowakeup() (2)

If predict ever blocks, 'tok' will be released, so SSB_MEVENT set
beforehand could have been cleared when we reach here.  In case
that happens, we set SSB_MEVENT again, after the notify has been
queued.
socket: Use modulo-N for SO_REUSEPORT socket locating

This greatly reduces TCP listen socket completion queue pool token
contention thus saves more cpu time.

When the testing box (i7-2600, broadcom 5719) is doing 335Kconns/s,
TCP listen socket completion queue token contention is reduced from
20K/s to 500/s and the idle time on each hyperthread is increased by
~5%.
Remove duplicated bitstring.h file

Noticed-by: vsrinivas
tools: Add bench tools for accept(2) and connect(2)

The main reasons behind making these tools instead of using netperf TCP_CC
test are:
- Netperf TCP_CC creates new server for each testing client
- Netperf TCP_CC creates new listen socket on different TCP port for each
  testing client
- Netperf TCP_CC created listen socket is in blocking mode
- Netperf TCP_CC closes accepted sockets immediately

All of the above listed items make netperf TCP_CC do not reflect real life
TCP server usage.

Tools in accept_connect:
- "connect_client"
  Fork certain amount of processes to perform blocking connect(2)/close(2)
  for the certain amount of time.
- "accpet_server"
  Fork certain amount of processes to perform blocking accept(2) on the same
  addr/port bound socket.  close(2) on the accepted socket is called
  immediately.  If -r is specified, each processes will create their own
  listen socket on the same port/addr w/ SO_REUSEPORT sockopt.
- "kq_accept_server"
  Fork certain amount of processes to perform non-blocking accept(2) on the
  same addr/port bound socket w/ help of kqueue(2).  close(2) on the accepted
  socket is called after the other side closed the connection.  If -r is
  specified, each processes will create their own listen socket on the same
  port/addr w/ SO_REUSEPORT sockopt.

kq_accept_server closely mimics the real life TCP server.
Remove <sys/bitstring.h> via 'make upgrade'.