collision detection is working! mostly.