Rework handling of STAGE macro
This implements the plan laid forth in #17146 (comment 222656) for avoiding contamination of stage0 headers by the STAGE
macro defined by the build system during the build of the stage1 compiler. Specifically, we avoid this by defining STAGE
in platform.h
instead of defining it on the command-line. This should fix #16797 (closed) and #17146 (closed).
Edited by Ben Gamari