5) Maybe: supoort for mouse operation for compatibility with touch-screen displays. (I don't have a touchscreen so motivation is low.....)

Instead of touch screen support maybe button codes display of raw untranslated data coming from the serial/usb ports might be another option. For example: someone hooks up touch screen to serial port, touches certain area of screen, reads untranslated value and maps it to some translated button such as "select playlist" etc. In otherwords, something simlar to hijacks mapping functions. This way any control device using serial/USB could be set up relatively easily.
I know you have a large to-do list and only offer this as something to think about.