mac: Unregister the proper removal callback in hid_close()

Unregister from IOHIDManager instead of IOHIDDevice.

Thanks to github user tomsor for noticing this.
Pseudo-added support for attach/detach notifications
Switched hid_{send,get}_feature_report to use input/output reports

- This should probably be added as an option rather than being hardcoded