Add a way to make agents three phased
Created by: AxelCarayon
Right now agents only have a wake up method and they asynchronously perceive, decide and act.
Scheduler should be able to make them all perceive, then make them all decide then make them all act instead.