refactored collide to collisionhandler