update .gitignore
add hid_open_device_path method, start cleaning up the report descriptor parser