Backport UHID from kernel 3.8

the userspace HID driver is needed by the JB bluetooth stack to process input
from bluetooth keyboards