Improved and cleaned up the text rendering algorithms.

I removed the hack used in both the Glyph Cache and text rendering functions
and used the actual pixels values there.

Before the the RGB channels for text were turned to white, and the blue pixel value
was use as the alpha value for rendering. This hack was used to workaround the fact
that SDL was unable to render a surface on another with alpha channel on both.
I fixed that by disabling the alpha blending before blit time, and removed the
unecessary use of intermediate buffer which was just cluttering the implementation.

I also made the TextImage class capable of using text shadows, something that
was subtle but lacking.

This all will permit a more extensive use of TextImages for text rendering.
Made option boxes use TextImages instead of computing glyphs on each draw calls.

This should help with performance a bit.

I still need to add wordwrap support to text image before using them in TextBoxes.