Switch the order of args to say() - sweeping change but in itself minor.

This also catches a number of cases where say(string) was used with the subw
argument omitted, where it should have been given. Asking for "whichever is
current" is now done with an explicit say(0,"...") and will be more obvious.

NOTE: This is a large and sweeping change, and will almost certainly require
a restart of Gypsum.

With this change, say() has been added to the plugin pledge.
Permit say() to take sprintf args, and take advantage of this