Added support for multiple font choices and automatic font substitution.

It is now possible to have a list of fonts to choose from rather than
having to pick just one. In addition, the Pygame implementation now
automatically substitutes some compatible fonts for Times New Roman,
Arial, Arial Narrow, and Courier, and also does the reverse (so,
"Liberation Serif" can be specified and result in Times New Roman
being used on Windows).