change Widget constructor to take dimension and is_interactive
GraphicDisplay: make getStringWidth argument const
add ubuntu font for testing
GraphicDisplay: add static methods to calculate rendered string width and height
make Button use static string calculations and now use "const char*" instead of "char*" for label
implement per-widget fonts
implement label widget