more on collision detection and resolution