Common: extended WFN Font support

This implements WFNFont class which is used to store font data in a structured way other than in previously used buffer of chars. This not only improves code readability and reusability, but also makes it possible to access character data directly without using lookup table and endianess corrections.

Additionally, this adds support for extended characters (those with codes 128 - 255).
Common: Refactored font renderer

Made WFNFont class safer to use and improved font renderer code for readability and speed (to some degree).
Common: detect bad WFN font format

This prevents memory corruption if the font format is broken.
Merge pull request #139 from ivan-mogilko/feature_wfn256

Extended WFN Font support