The platform/ "project" contains the platform specific code for other projects.
It also contains portable file for system types that are not supported equally
on all platforms.  It contains subdirectories of the form:

        os/os-version/os(arch)-size/arch/compiler/[compiler-version]

where "os" is the operating system, and "arch" is the processor architecture.

Examples:

        linux/2.6/32/x86/icc
        macos/10.4/32/ppc/gcc
        windows/xp/64/x86/msvc

Each of these directories may contain the project subdirectories and headers
named similarly to the file they are part of but with a .platform.hh extension.
For example a platform specific header for utility/io/ostream.cc might be in:

        linux/2.6/32/x86/gcc/utility/io/ostream.platform.cc
        windows/xp/32/x86/msvc/utility/io/ostream.platform.cc

The build system searches up these directories for platform
specific headers.

        os/os-version/os(arch)-size/arch/compiler/compiler-version
        os/os-version/os(arch)-size/arch
        os/os-version/os(arch)-size
        os/os-version
        os

This allows general headers to be defined for certain platforms
(such as for each OS) that can be superceded by more specific headers.

Note that we don't replicate all projects under all platforms, only the ones
that actually HAVE platform specific code.
