Implement safe removal of elements of an intrusive list while looping over them
Implement safe removal of elements of an intrusive list while looping over them. It fixes #2790 (closed) "g_moveables entity think list breaks when several entities are deleted"
Extra:
- Add some automated tests of intrusive lists when they change during a loop (run tests with sv_cmd runtest)
- Implement a qc version of copyentity that clears intrusive list data from the copied entity.