Here's another iteration that adds other units (moving and not) that can push each other around. They're all circles.
https://dl.dropboxusercontent.com/u/542 ... units.capx
If you're interested the smooth motion around the corners is done by using voronoi region around the polygon. The light blue region is closest to an edge and dark blue to a corner. It then finds the distance and angle between the object and that point or edge of that region. With that it can calculate how far to move away if too close.