Improvements in the animation and the algorithm of spliting and joining

Hey!

I had to do some modifications in your code so I get a better animations with the points moving around. I had to change lots of things but finally it looks much better at runtime with the points moving around kind of more smarter than before.
Maybe it is much more changes that you would like to have in your code, anyway I send the "pull/request" to you so you can see what I have done.