improved efficiency of JavaGLContext.convertImageData()

Accomplished by avoiding the previous contortions preparing data needed to arrive at the correct colour model. At least for the case involving canvas drawing, which greatly improves efficiency. 

I've added a CanvasDemo to playn-samples to demonstrate the change, will send it via a patch as I don't have commit access to playn-samples.

PS branches in git are scary for mercurial users :-(