removing agent prototype
refactoring agent
moving collision check
refactoring