ENH: reduce the alignment requirement for complex arrays on x86

x86 can deal with unaligned memory access so it does not need to align
complex types to 2 * sizeof(T) for the dtype transfers which work on the
full complex number.
closes #3768

Does not fix that new complex arrays are reported as aligned when
the allocator does not provide the required alignment.