This implements a workaround for the Java 7 text antialias bug.  The
basic idea is that we never render text anymore, we always convert
our text to shapes and render that.  The shapes are then antialiased
using the standard antialias geometry pipeline, which seems to
work.

Change-Id: I7ac7cd6c982da4699d1f72db85016a5ee94bf80a