I have worked with quite a few servos (Industrial and RC) and from my experience they don't come with a limit switch that actually takes the current off the motor when they hit a limit. They are however limited in rotation by the PWM signal you send them and are as such limited to a rotation safe area.
It does become a bit more complicated when you link several servos into a robot arm as there is a chance that individual arm segments might hit each other or the ground or... .
For a reference feedback i recommend measuring the internal voltage over the servo reference potentiometer as outlined in the following link:
This analog voltage gives you an indication of the actual servo position. This voltage can be sampled from eg. an Arduino board or any other board with an analog/digital converter.
I have done something similar with a hexapod robot, and it worked perfectly.