arm: Rewrite ffi_closure
arm: Remove internal FFI_TYPE constants
arm: Add support for complex types
arm: Add argument space for the hidden struct return pointer

This should have been failing all along, but it's only
exposed by the complex_int test case.
arm: Add support for Go closures