Fixed C4 target inconsistencies with Fog of War and Husks

Closes #5566
This should be `GetOrDefault` to be consistent with the non-frozen actor case.

I see no need to restrict this to a single trait per actor, however:
```csharp
return target.Info.Traits.WithInterface<IDemolishableInfo>().Any(i => i.IsValidTarget(target.Info, self));
```
plus a similar change for the non-frozen actor case.