Added Agent.State and state() method