Added Smoothing of the path.

I added a Bezier Spline smoother to the patching for the first 5 points
generated.  It looks "OK", but I am not sure it is really all that
helpful.  Also, it appears that the MovingEntity can get hung up
searching for a path because a surrounding node might be blocked, so I
only have it replay if the current node is blocked when traveling into
it.
Moved to using vectors instead of lists for paths.

I changed the GraphSearch interfaces so that they use a vector instead
of a list.  Paths are returned in reverse order, so points are popped
off the back.  This will make it easier/faster to iterate over paths
and the memory hit (unless the lists use internal pools…) should be
faster and memory should be coherent in the cache (maybe).  I also
found that the entity still gets hung up occasionally.  The problem is
that the smoothed path is too close to the current sensor and when the
point is popped, the entity still thinks the path is blocked, so it
can't move.  I think the solution is to search for blockage on the
"major" node path points and only smooth the near points based on the
next 3 points.  This will require a "near" path and "full" path
approach.