BMFontTest: Add kerning && BMFont export tests
Texture: Fix set_colorkey method

This method now correctly does what it was intended to always do;
convert a color key to a fully transparent alpha channel.
Text: Refactor update loop

Text interface now properly updates its texture, instead of re-creating
a new one (huge performance hit) each time ::update is called.
  This is a necessary change in order to support the internal use of
::update when setting the text -- otherwise consistency bugs pop up
across the unit tests. A massive performance hit was discovered in
TTcards when calling ::set_text, due to the fact that we were
constantly re-creating the texture.

* Text: Fix the ability to use bit-masked Text::Style enumeration
values together.

* IFont: Change the return type of ::image to an object pointer; this
resolves a memory free issue that occur when releasing local nom::Image
objects that have been initialized with data from this method.

* BitmapFont: Fix long-standing color key conversion bug that happens
when copying nom::Image pixel data to a texture.

* TrueTypeFontTest: Add unit tests for Text::Style enumeration types
(font styles available to us from SDL_TTF).