Puck.js or any of the BLE espruino devices will handle Bluetooth HID devices and serial via some modules that are very similar to the USBKeyboard/etc ones: http://www.espruino.com/Puck.js+Keyboard
However handling composite devices I'm not sure about... That might need some work, but I'd have thought it would be possible!
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Looks neat - thanks!
Puck.js or any of the BLE espruino devices will handle Bluetooth HID devices and serial via some modules that are very similar to the USBKeyboard/etc ones: http://www.espruino.com/Puck.js+Keyboard
However handling composite devices I'm not sure about... That might need some work, but I'd have thought it would be possible!