This PR includes two commits.
The first commit ensures the macro definition of test-with-runner precedes its use. With r6rs it is not necessary, for the expansion of rhs of definitions is deferred, but r7rs doesn't have explicit definition of expansion process and some implementation needs macros to be defined before its used.
The second commit adds some cond-expand clauses for Gauche.