do mmap2 memory allocation in C
bring ptmalloc back

We need it to emulate mmap2 properly.
spidermonkey memory align workaround