AST: Give `CustomAvailabilityDomain` 8 byte alignment.
`AvailabilityDomain` is a pointer union over `CustomAvailabilityDomain` and an
opaque pointer-like 24-bit value, which means the number of spare bits in an
`AvailabilityDomain` representation is one fewer than a
`CustomAvailabilityDomain` pointer. Other structures in the compiler rely on
there being at least 2 spare bits in `AvailabilityDomain`, though, which was
not the case when building for a 32 bit architecture. To ensure there are
enough spare bits, always align `CustomAvailabilityDomain` to 8 bytes, the same
as many AST data structures.