Some of the "non-standard characters" is a combination of incorrect encoding applied to the page, and web browsers apparently not handling certain Latin1 characters properly that should have been decoded right despite charset declaration being wrong (for example code 0xA0, aka non-breaking space).
Namely, the page contains text in Windows-1252 encoding, but declares it's in ISO-8859-1. Most of the characters are the same between the two, but few aren't, like em-dashes (code 0x97) in second paragraph of the preface.
This probably involved whatever pipeline was originally and over time used to maintain the pages from RTF masters that Baen used.