Initial import of the Microsoft HyperV 'enlightened' drivers.

From https://github.com/FreeBSDonHyper-V/VendorBranchForFreeBSDonHyper-V
rev:   99eaa0ddb0485c9d76046664100f6beb1a0a0c58
Import driver source from hyperv-20130502 vendor branch.
make glue to hook up the hyperv kmods to the build.

Modified from the original Microsoft versions to pull
code/headers in from the sys/contrib/dev directory.
IFC @ r252047
IFC @ r252288
Import Microsoft HyperV driver update
From https://github.com/FreeBSDonHyper-V/VendorBranchForFreeBSDonHyper-V
rev: 3c707c73520adbd6d1f4ff009826dbbfb0c2dc4d
Import driver source from hyperv-20130627 vendor branch.
Connect the stordisengage driver to the build.
IFC @ r252763
Microsoft have changed their policy on how the hyper-v code will
be pulled into FreeBSD. From now, FreeBSD will be considered the
upstream repo.

First step: move the drivers away from the contrib area and into
the base system.

A follow-on commit will include the drivers in the amd64 GENERIC kernel.
IFC @ r253461
First cut at adding the hyperv drivers to GENERIC.
The files inventory should probably have the modules split
out into net/storage/common etc as the modules build is,
but this will do for now.
IFC @ r253862

- change the SI_SUB_RUN_SCHEDULER sysinits in hv_utilc and
hv_netvsc_drv_freebsd.c to SI_SUB_KTHREAD_IDLE, since the
former is no longer in FreeBSD.
  The use of these SYSINITs can probably be removed.
IFC @ r255209
Latest update from Microsoft.

Obtained from:	Microsoft Hyper-v dev team
Revert the kvp code - there's still some work that
needs to be done for that.

Discussed with:	Microsoft hyper-v devs
IFC @ r255459
Unregister inet/inet6 pfil hooks on vnet destroy.

Discussed with:	andre
Approved by:	re (rodrigc)
Import Hyper-V paravirtualized drivers from projects/hyperv
branch into head.

Approved by:	re@ (hrs)
Obtained from:	Microsoft, NetApp, and Citrix.
mdoc: fix list width.

Approved by:	re (blanket)