Make the collision world auto-detect when a collision object moved.
Currently, the user has to call CollisionWorld::set_position(...) to change the position of a collision object. Calling CollisionObject::set_position directly instead will result in the collision world not being aware of the change, and thus not detecting potential new collisions.
We should find a way to let the collision world auto-detect a position change due to CollisionObject::set_position.
I just spent a long time trying to figure out why my collisions weren't happening. So I definitely agree that this would be a good change.
I was thinking about it some more, what would be really good in this area for me would be to have a CollisionWorld::apply_transformation. Then you don't have to even grab the object at all.