Add USB_STRING_DESCRIPTOR and make the Keyboard demo use it.

Dean, please take a look at both the macro and the keyboard demo.  If you say Amen to this then I'll do a sweeping replace across the whole tree.