FEAT: new Red/System function attribute: custom.
FEAT: improved EABI compatibility for ARM emitter (interworking-compliant calls).
FIX: dereferenced function pointers now generate correct code when calling external code (EABI compliant calls).
FEAT: a few minor emitted code optimizations for ARM.

Custom attribute
---------------
It is sometimes desirable to have full control over the native stack layout of a function call. The `custom` attribute allows you to manually `push` values on stack and still generate a correct function call with adequate stack cleanups. This is most useful with 3rd-party C code that relies on cdecl convention, which requires the caller to clean-up the stack. This new attribute will take care of it in a cross-platform way.

Example:

    foo: as function! [[custom]] <imported-c-function>
    push 123
    push 0
    foo 2          ;-- custom call with arguments number

A custom call requires an integer number that is consumed internally by the compiler. That integer specifies the number of arguments pushed on stack (which will be cleaned up when the call returns).

WARNING: stack alignment constraints are not (yet) enforced by the custom attribute, so be sure to respect the platform-specific conventions wrt alignment (mainly concerns MacOSX and ARM-based platforms).