Yes, hubs are supported.
The one gotcha to keep in mind is hubs with more than 4 ports are usually built with multiple 4 port hub chips. That's why you usually see 7 or 10 ports, because 1 or 2 ports on the first 4 port hub chip get used to connect the other 4 port hub chips. A consumer sees a 10 port hub, and they're blissfully unaware it's really 3 hubs inside. So remember you'll need to have 3 hub instances in your program if you want to support a 10 port hub.