language.txt

The Language object handles all readable text produced by the software. The most
used function is getMessage(), usually called with the wrapper function wfMsg()
which calls that method on the global language object. It just returns a piece
of text given a text key. It is recommended that you use each key only
once--bits of text in different contexts that happen to be identical in English
may not be in other languages, so it's better to add new keys than to reuse them
a lot. Likewise, if there is text that gets combined with things like names and
titles, it is better to put markers like "$1" inside a piece of text and use
str_replace() than to compose such messages in code, because their order may
change in other languages too.

While the system is running, there will be one global language object, which
will be a subtype of Language. The methods in these objects will return the
native text requested if available, otherwise they fall back to sending English
text (which is why the LanguageEn object has no code at all--it just inherits
the English defaults of the Language base class).

The names of the namespaces are also contained in the language object, though
the numbers are fixed.
