Basic implementation of text styles. Roughly speaking, all text attributes related to how it is rendered (scale, font, color) have been encapsulated into the TextStyle wrapper.

The style of a Text object can be defined directly into the object or through a reference to a file. This allows rapidly changing the appearance of all the text in a game, in one shot, but also personalizing the attributes for a particular piece of text.

Text style is optional. If not set, a basic white, 1.0F style is used.