updated agent constructor and methods