working on Agent movement