The old "one function per config" system is depricated for quite a while now...
This example implements a USB Device Firmware Upgrade (DFU) bootloader to demonstrate the use of the USB device stack.