Windows: Fix USB descriptor creation code for HID devices

* Prior to this fix the location for the next endpoint structure was
  obtained by using ed++. This doesn't work as
  sizeof(libusb_endpoint_descriptor) is greater than
  LIBUSB_DT_ENDPOINT_SIZE due to extra members.
* Closes #110
Core: Add HID and kernel detach capability detection for all backends

* Also remove Linux special case from xusb sample.
* Note that LIBUSBX_API_VERSION is incremented as a result of
  libusb_has_capability() returning nonzero rather than 1 when
  a capability is supported.
* A LIBUSB_CAP_HAS_HOTPLUG is also added, though it is currently
  not implemented on any platform
* Closes #102
libusbx 1.0.15-rc1

* Also fix missing header in release tarball