optimized TextureAtlas.getNames by caching sorted list of names (closes #548)