Add allocation macros (per platform) and ARM cache flush

If MP_PLAT_ALLOC_EXEC isn't defined, it will fall back to m_new and m_del.
All tests for unix x64 pass.

Fixes issue #840
I guess you can now delete the old version of this in asmx64.c