continuous rotation of servo problem
You simply have the wrong servo for your application. Google MG955 and you will find that some are labelled "continuous rotation" or "360°". It means that you can not set it to a particular angle.

Arduino Servo library tells:


  Writes a value to the servo, controlling the shaft accordingly. On a
  standard servo, this will set the angle of the shaft (in degrees),
  moving the shaft to that orientation. On a continuous rotation servo,
  this will set the speed of the servo (with 0 being full-speed in one
  direction, 180 being full speed in the other, and a value near 90
  being no movement).


A standard servo motor uses a potentiometer to acquire the shaft angular position. Then a feedback loop controls the position.

If your servo  is new, it must be a simple DC motor with a reduction stage (like here). If it is not new, it also could be a standard servo that has been hacked to break the position control loop (like here).