[HEAVY WIP] Ports TG's gun code. 

Just a small PR, move along please.
I know, I have the "targeting.dm" disabled so I get more errors for the guns. With it enabled most of it was about it.