x64: added x64 syscall stubs, as per the i686 ones.
native, posix, pedigree-c: moved these subsystems to syscall-stubs for x64.

It turns out previously 'native' and 'pedigree-c' were unaware that the RBX
register gets trashed _during_ the 'syscall' instruction, which caused some
particularly nasty bugs where the clobbered register could cause segfaults
and other strange behaviours.

This also helps avoid epic code duplication and is generally just nicer.
x64: fix logic with table entry allocation and mapping that caused some user-mapped pages to lose their writeability.
x64: copy and paste x86 PAT modification to x64 initialisation.
x64: add a way to get a much, much bigger area of virtual memory available to mmap and friends
posix, kernel, init: fix logic in base memory allocator regions to avoid an overrun of the heap.

Also added the dynamic memory allocation regions for architectures that support them, which now allows mmap on x86_64 to make immensely large mappings.
libload: added a log line that shows where each section of a file has been loaded and with which permissions.

This is a little noisy in logs but doesn't affect performance and is quite invaluable when something goes wrong.