[VRSNBSD-19]: Don't take INP_INFO lock when receiving SYNs hitting listening sockets

Mike's review:
 - Simplify the locking logic
 - Fix tcp_input() comment

Hiren's review:
 - Better tcp_input() comment
 - Simpler test condition
[VRSNBSD-19]: Introduce the INP_LIST global mutex for protecting pcbinfo global structures

Julien's review:
 - Fixing comments
[RC1][VRSNBSD-19]: Use INP_INFO_RLOCK in critical path, and use INP_INFO_WLOCK in full INP loops.

Julien's review:
 o Fix INP_INFO_WLOCK assertions
 o TIME_WAIT changes:
  - Deprecate using of tw reference counting
  - Fix a tw leak in tcp_tw_2msl_reuse()
  - Check tw->inp == NULL
  - Check tw->cred != NULL
  - tcp_tw_2msl_reuse() simplification