Issue 11666: Separate each platforms ports into its own directory

This pull is a kickstarter to get some ball rolling on issue 11666.  This implements the basic idea I had in mind in a very rough "tack it together with string" proof of concept sort of way.  And is not suitable for merging yet.

This change takes the module core.sys.posix.ucontext by way of example, and moves it from ``src/core/sys/posix`` to ``$(PORTDIR)/core/sys/posix``.  The idea being that we hand over the handling of architecture version conditons to the configure scripts, which in turn manages the exact files we need for compilation.  (This is simply done in gdc, for instance, and hoping ldc will be the same).

In self criticism, this is infact rather naive, and it would be more sensible to only move the ucontext/mcontext struct definitions into their own modules, leaving the original module intact without duplicating the function declarations everywhere.

I'll also raise a separate pull which does the same as here, except it leverages the recent packages feature that should be friendlier to dmd.  (but will take a small while longer for me to do :o)

Watch this space.