Separating collision checking and physical update, cleanup of old physical code