## Goal Make non-input hidraw devices work again.
## Description
The current device backend selection policy is input-device oriented and it does not handle non-input hidraw devices correctly. Pre-9.1 versions handled all hidraw devices with hidraw backend, but since 9.1, there have been changes/additions to the backend selection policy which have caused non-input hidraw devices to stop working.
## Changes in nutshell - add `device_desc.has_hid_input_relative` which tells if the device has hid subsystem ancestor AND the hid ancestor has an input subsystem descendant; this is useful for detecting if a hidraw device is a non-input device or not (non-input hidraw devices do not have hid input relatives) - prefer hidraw backend for all such non-input hidraw devices