target-s390: Add facilities data to env

Name the facilities bits, collect the set of bits for tcg and the various
real processor revisions.  Update the set of facilities reported for TCG.
Validate the insns we execute against the facilities enabled.  Report the
correct facilities via STFL.

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Implement STFLE

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Implement SAM31 and SAM64

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Implement EPSW

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Fix STIDP

The implementation had been incomplete, as we did not store the
machine type.  Note that the machine_type member is still unset
during initialization, so this has no effect yet.

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Fix STURA

We were storing 16 bits instead of 32.

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Implement LURA, LURAG, STURG

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Implement ECAG

Signed-off-by: Richard Henderson <rth@twiddle.net>
target-s390: Force TCG to report Z9-109

Fedora 19 targets Z9-109 as the minimum supported cpu, and the kernel
will exit very early in the boot process if facilities do not match.

This is a hack until we properly implement distinct qom cpu types.

Signed-off-by: Richard Henderson <rth@twiddle.net>