Robotic arm from scratch

You can make life easier for your servos by making the arm self balancing i.e. weighting each moving part so that the center of gravity is close to the pivot, or adding sprung assistance (the sort of thing used in some angle poise lamps). To avoid overloading the servos by requesting sudden accelerations, I suggest you manage the speed of each joint so that it ramps up and down smoothly. A proportional control algorithm, where you establish a target position for the joint and then move it at a speed which is proportional to how far it is away from that target position, would be an easy way to achieve that.