change TextLayout boundsForRange computation to properly handle ascender...

...s and descenders (j, g, h, l, etc...). Each glyph for a given font will now have the same rect height defined by font metrics.