alpha: Reorganize cif flags

Unties the backend from changes to FFI_TYPE_* constants, and allows
compilation to succeed after the addition of FFI_TYPE_COMPLEX.

Delete the hand-written unwind info.
alpha: Clean up conversion of float values

Don't use "real" conversion to double, lest we raise
exceptions when passing signalling nans.
alpha: Add support for complex types
alpha: Add support for Go closures