Defer generation of signed distance field texture on a per layer basis

The edtaa3() function is too slow to make front loading of generating the
signed distance fields for all glyphs a reasonable approach. Instead the
glyphs are rasterized and positioned in the atlas at initialization time
but the generation of the SDF and texture uploading is deferred until
render time. This is done on per layer basis to limit the number of
texture upload commands.