added out of bound direction change
fixed add/spawn agent
consider neighbour motions