Animations.jl has a pretty good collection of "easing functions" that we could use here to smooth out path changes.
This is very much a long term objective and not something I'm looking to do now, but it's a good way to structure the repo in my opinion.
We could have SmoothOutMove(move, easing) which simply warps the time sent to the move by the given easing function.