Initial extcap support.

Allow IOCTL_USBPCAP_GET_HUB_SYMLINK from everyone. Full functionality
requires administrator rights.

Allow starting USBPcapCMD without elevated priviledges. Create elevated
child process if needed.

Extcap capture options:
  devices, capture-from-all-devices and capture-from-new-devices
are currently ignored (always capture from all devices).
USBPcapCMD: Initialize bufferlen and snaplen for extcap operation.
USBPcapCMD: Destroy elevated worker on exit.

Using JobObject ensures that elevated worker is destroyed even if parent
process is terminated using TerminateProcess().
USBPcapCMD: Fix job object assignment under debugger.
USBPcapCMD: Exit if worker process fails to start.
Implement capture only from selected devices.
USBPcapCMD: Print errors to stderr.
USBPcapCMD: Fix worker process termination on Windows 8.1.

This also fixes it on Windows 7 when running inside Visual Studio debugger.
USBPcapCMD: Set default value for extcap boolflags.
USBPcapCMD: Sanity check capture options.
USBPcapCMD: Fix PREfast warnings and errors.
USBPcapDriver: Fix PREfast warnings and errors.
USBPcapCMD: Fix CID #1245695: Double free.
USBPcapCMD: Change application type to windows.

This prevents console window from showing up when using USBPcapCMD
as extcap.