Applys decloak to units activating a C4 demolition or infiltrate ability

Closes #7028

Units which have a cloak and a C4/infiltrate ability will now decloak upon exiting the target building. Of course infiltration normally consumes the unit, so there will be no actual impact in that case. However infiltration was included in the original feature request, so applying the change to both allows for the possibility of a reusable infiltration unit.
I suggest also adding a field to CloakInfo so that this can be customized.  These code blocks would then look like:
```
if (cloak != null && cloak.Info.UncloakOnInfiltrate)
	cloak.Uncloak();
```