I had a partial go at figuring out some pointers on how to do a game like zume.
First you need a way to move objects on a path. While there are many ways to do this I settled on needing one that will let you specify the distance along the path. Then you just change this distance to move the object back and forth. Another benefit is we can compare the distances with other objects on this path and know the order of the objects on the line. This is for pushing and seeing how many of the same color is in a line.
The second part is inserting a free moving object onto the path. I ended up doing it with a dot product of the difference of positions of the objects and the angle of the path. It works well and pushes the other objects out of the way. However it's more of a snap, you'd want more of a smooth and fluid transition. As I write this I think it could be solved by calculating the perpendicular distance from the path and changing that to 0 gradually, as well as making the pushing of other objects be done till 0 too.
Anyways, just some ideas. This is not a tutorial, more just implementing some ideas that may be useful for others.
made the balls join the path more smoothly.