Do not precalculate kerning for all characters

Precalculating kerning for all character pairs consumed a lot of RAM (N*N complexity). For CJK fonts that contain tens thousands of glyphs it was a highly unpractical approach resulting libRocket consuming >1.5GB of RAM. Instead, encapsulate FT_Get_Kerning call in FontFaceHandle::GetKerning and let FreeType handle the kerning on the fly. In my measurements, the performance difference is negligible, especially when compiled compiled geometry is utilized.
Merge pull request #1 from viciious/kerning_footprint_reduce

Do not precalculate kerning for all characters
Merge branch 'build' into cjk_fonts
Reduce the memory footprint of glyphs and characters
Support for windows IME
Optimize texture layout generation
Dynamic generate rectangle and place into texture layout when ElementText generating string.
So do not need to create all the textures layout at font face initialization.
Dynamic udpate layout texture for IME input
Fix uninitialized variable
Unload font face
Load the font face with the specified index from TTC or OTC file
Fix gcc warning
Dynamic font texture updating for DirectX
CJK white-space property support
Fix return value of Element::GetOffsetParent()
Typo fixes
Input method support on MacOSX
Merge branch 'cjk_fonts'
Merge pull request #5 from czbming/master

CJK support