Depending on what you're doing, the USB3751-1 might be a solution.
This offers a ton of features particularly for USB devices with rechargeable batteries, including charging port identification and capabilities, under- and over-voltage protection and ESD protection. It also offers 100mA current limit until configured otherwise.
They're not cheap ($0.44 1ku) but depending on the application, once you've added up the cost of all the other paraphernalia using discrete devices, it might be an economically viable solution.