Added product name resolution. If the tool fails to fetch vendor and manufacturer names from the device itself, it will attempt to resolve the name using usb.ids.