Fix a bug in the setting of *root*.

Split out the code that establishes the servers, so the main is more transparent.

That also fixes a bug with a psmacro defined in the same compilation unit that uses it.