TextFontFactory reuses existing fonts

Hi all, I've been using shoes to make an interactive list of ~100 entries (not exactly what shoes is meant for but oh well), when this runs on Windows and I scroll down the list it crashes with this error;

    java/lang/reflect/java/lang/reflect/Constructor.java:408:in `newInstance': org.eclipse.swt.SWTError: No more handles
        from .../shoes4/lib/shoes/swt/text_block/text_font_factory.rb:19:in `create_font' ...

It seems to happen because too many fonts are created at the same time, so I've updated TextFontFactory to reuse existing fonts rather than make lots of identical ones, which fixes this (probably rare) issue.
Maybe this quintet could go in a separate class that only holds those values? That could make the check in line 15 simpler and also the iteration in line 29 without the extra arguments :)