Btw, this planned change worries me: "So how does it load the 400x400 pixel Hero.png image correctly on all the different devices? It will rescale the image while it’s being loaded."
That's nice and handy... for individual images. But what about spritesheets? You can't just scale down spritesheets because it may mess up the empty space between the individual sprites in the sheet (which usually need to be fully transparent in order to avoid color bleeding from adjacent images in the sheet when scaling, rotating, etc. the sprite. Also, if there are any sprites in the sheet without empty space between them, designed to be used untransformed, scaling the sheet down may cause the common edge pixels of the two sprites to be merged, so the edge of one sprite may bleed into the correspondent edge of the other.)