Let's Make Robots!

How many 9g servos can an USB handle.

I need some confirmation to be sure - USB 2.0 can supply 500mA, and typical small 9g servos draw like 150mA, right? That means it's safe to have an arduino powering 3x 9g servos, running off an USB port..?
Also, how important is it to have an electrolytic capacitor in the start of power supply chain, to store current? At least in this particular case - how much will it help protect the USB port? Or if all motors are stalled, capacitor will run out of stored power, and the USB port can still be damaged?

ATMega168 resetting when AVRISP2 connected

I'm trying to make a small robot arm with a few 9g micro servos and I'm not a debugging expert, but with flashing leds I've deduced that my chip keeps resetting all the time. When I unplug my programmer header, the resetting stops and everything works fine.

Is this a common, easily solvable problem, or will I just have to plug the header in and out all the time..?