The big issue i encountered is the hub programming software from Microchip is full of bugs and basically unusable and the docs are also a bit wrong. So i had to write a programmer from scratch to remotely program the hub chip registers so they are ready for manufacturing. E.g allocating unique serial number, setting up the chip fuses etc. That actually took most of the time. It programs everything from australia via virtualhere during manufacturing in china. I had trouble with the Great firewall blocking virtualhere half way through too! So i had to turn of ssl
The switchable host im not sure. I dont think many customers use it, I do have a few that use it for switching mouse and keyboard they plugged in. That functionality came with the hub chip so i just wired it up as it didnt cost extra. The hub chip also came with GPIO/uart routing but i didnt hook that part up.