Follow curved path with dynamic speed

I am looking for a plugin/library/tutorial that would let me have an object follow a curving path and change the speed of the object through scripting.

I have looking into iTween but it does not look like it allows specific speed settings it only eases.

Does anyone know of something that would help?

I found my answer here

float Velocity = 1f;
float PathOnePercent = Vector3.Distance(iTween.PointOnPath(path, percentage) , iTween.PointOnPath(path, percentage + 0.1f));
float RealOnePercent = iTween.PathLength(path) * 0.1f;
float Distortion = RealOnePercent / PathOnePercent;
float RealPercentToMove = (Velocity * Time.deltaTime) / iTween.PathLength(path);
percentage = (RealPercentToMove * Distortion) + percentage;
iTween.PutOnPath(gameObject, path, NewPercentPosition);

All you have to do is change velocity over time, it works great.