CPP: Add define for __OS2__.
Precompile.sh: Support other path separators than :.
Makefiles: Support other path separators than :.
Tools.Shoot: Use Process.path_separator.
Runtime: Support OS/2 path conventions.
Makefiles: Support OSes needing extensions.

Use @EXEEXT@ where appropriate.

Fixes issue where compiler on OS/2 isn't happy.

Thanks to Chris Angelico <rosuav@gmail.com> for the report.