Fixes an issue where mobjs with shadows would never get freed,
Due to their reference count getting reset after having their shadows spawned, resulting in a reference count of -1 and the mobj never being freed, or a use-after-free during the shadow's thinker.
Also adds some P_SetTargets to P_BlockThingsIterator to fix an inconsistency I noticed while investigating this that could potentially inflate reference counts.