In Godot 4.0 beta, as far as I can tell, PhysicsBody2D.moveandcollide is only safe and useful when used on a CharacterBody2D. The documentation makes it seem like using it on other body types such as RigidBody2D or AnimateableBody2D is discouraged and could lead to unexpected and erratic behavior.
Given that this is the case, why is moveandcollide defined on PhysicsBody2D and not CharacterBody2D? Is there some use of moveandcollide outside of CharacterBody2D that I am unaware of?