usb: preparation to support multiple usb configs
- existing class drivers are placed to config 1
- drivers_connected==true is replaced with usb_config!=0
- supports config transition between nonzero configs
- STALL if request set_config was invalid
Change-Id: Ia775ae2dcb7d0cc08d2f3ee5ca41683837b04259