target-arm: enable different semihosting usage models on TrustZone systems.

Semihosting can be useful in both worlds of a TrustZone system. This patch
introduces the "-semihosting-model" command line option, to select on
of four usage models ("compat", "secure", "normal", "both") for
semihosting.

The "compat" model is selected as default, when no "-semihosting-model"
command line option is present. In compatibility mode semihosting is
available in secure and normal worlds, while any use of the SMC
instructions aborts the simulation.

The "secure", "normal" and "both" usage models allow selective activation
of semihosting in one or both worlds of a TrustZone system. The SMC
instruction is allowed by all of three TrustZone-aware usage models.