* Since 0.2.0 - Issue a SET_PROTOCOL request during enumeration to ensure target keyboard is in boot protocol mode. - Use correct inteface number during SET_REPORT request. - Allow up to 32 keyboards to be attached. * Since 0.1.0 - Continue enumeration even if we can't use SET_REPORT to update the various keyboard locks. - Store wMaxPacketSize in endpoint descriptors so we can use them during requests. - Actually parse config descriptors and use that to find boot keyboard endpoints. - Use a callback to tell the host about new keyboard reports.