Fix runtime with RPD unwrenching. (#54773)
Fix runtime with RPD unwrenching. (#54773)

[01:44:12] Runtime in RPD.dm, line 392: Cannot read 1.type

/obj/machinery/atmospherics/wrench_act can return a boolean instead of an object under the following scenarios:
You cannot unwrench the machine.
You can unwrench the machine, but use_tool later returns FALSE instead of TRUE.

use_tool can fail when you stack wrench_acts ontop of eachother. The first wrench_act will work as expected and return the deconstructed version of the pipe, all other stacked wrench_acts will have use_tool fail and will instead just return TRUE.

This PR prevents stacking of wrench_act-based do_afters and guards against unexpected runtimes by CRASHing when wrench_act returns something unexpected.
WJohn/-tg-station,Razharas/-tg-station,ShizCalev/tgstation,kingofkosmos/-tg-station,Jordie0608/tgstation,Razharas/-tg-station,HippieStation/HippieStation,Razharas/-tg-station,MrStonedOne/tgstation,HippieStation/HippieStation,ShizCalev/tgstation,Razharas/-tg-station,erwgd/-tg-station,Bawhoppen/-tg-station,GunHog/-tg-station,Razharas/-tg-station,erwgd/-tg-station,coiax/-tg-station,JJRcop/tgstation,kingofkosmos/-tg-station,Razharas/-tg-station,MrStonedOne/tgstation,WJohn/-tg-station,infinitystation/-tg-station,MicroWorldwide/SS13-TG-station,optimumtact/-tg-station,ShizCalev/tgstation,Profakos/tgstation,JJRcop/tgstation,kingofkosmos/-tg-station,Bawhoppen/-tg-station,JJRcop/tgstation,Bawhoppen/-tg-station,tgstation/-tg-station,CPTANT/-tg-station,coiax/-tg-station,JJRcop/tgstation,MicroWorldwide/SS13-TG-station,Jordie0608/tgstation,Razharas/-tg-station,Bawhoppen/-tg-station,MicroWorldwide/SS13-TG-station,ShizCalev/tgstation,GunHog/-tg-station,MicroWorldwide/SS13-TG-station,Jordie0608/tgstation,MrStonedOne/tgstation,Profakos/tgstation,kingofkosmos/-tg-station,coiax/-tg-station,optimumtact/-tg-station,MrStonedOne/tgstation,Razharas/-tg-station,WJohn/-tg-station,TalkingCactus/tgstation,JJRcop/tgstation,tgstation/-tg-station,GunHog/-tg-station,tgstation/tgstation,GunHog/-tg-station,Jordie0608/tgstation,infinitystation/-tg-station,CPTANT/-tg-station,MicroWorldwide/SS13-TG-station,tgstation/-tg-station,coiax/-tg-station,Profakos/tgstation,ShizCalev/tgstation,WJohn/-tg-station,coiax/-tg-station,TalkingCactus/tgstation,HippieStation/HippieStation,infinitystation/-tg-station,Cruix/-tg-station,Bawhoppen/-tg-station,MrStonedOne/tgstation,ShizCalev/tgstation,CPTANT/-tg-station,TalkingCactus/tgstation,Cruix/-tg-station,JJRcop/tgstation,Bawhoppen/-tg-station,ShizCalev/tgstation,MrStonedOne/tgstation,GunHog/-tg-station,infinitystation/-tg-station,Jordie0608/tgstation,infinitystation/-tg-station,CPTANT/-tg-station,infinitystation/-tg-station,ShizCalev/tgstation,WJohn/-tg-station,CPTANT/-tg-station,coiax/-tg-station,optimumtact/-tg-station,infinitystation/-tg-station,Bawhoppen/-tg-station,optimumtact/-tg-station,HippieStation/HippieStation,Jordie0608/tgstation,Profakos/tgstation,Cruix/-tg-station,Cruix/-tg-station,MicroWorldwide/SS13-TG-station,WJohn/-tg-station,WJohn/-tg-station,tgstation/-tg-station,tgstation/tgstation,tgstation/tgstation,Cruix/-tg-station,MicroWorldwide/SS13-TG-station,GunHog/-tg-station,tgstation/tgstation,kingofkosmos/-tg-station,erwgd/-tg-station,Bawhoppen/-tg-station,CPTANT/-tg-station,HippieStation/HippieStation,Jordie0608/tgstation,HippieStation/HippieStation,tgstation/tgstation,Cruix/-tg-station,infinitystation/-tg-station,Profakos/tgstation,tgstation/tgstation,CPTANT/-tg-station,Cruix/-tg-station,coiax/-tg-station,optimumtact/-tg-station,Cruix/-tg-station,kingofkosmos/-tg-station,CPTANT/-tg-station,JJRcop/tgstation,optimumtact/-tg-station,tgstation/tgstation,MicroWorldwide/SS13-TG-station,MrStonedOne/tgstation,Profakos/tgstation,kingofkosmos/-tg-station,Jordie0608/tgstation,TalkingCactus/tgstation,tgstation/tgstation,GunHog/-tg-station,MrStonedOne/tgstation,HippieStation/HippieStation,optimumtact/-tg-station,Profakos/tgstation