added implementations of textAscent(), textDescent(), and
textWidthImpl() so the text rendering in P2D/P3D matches JAVA2D output