Fixed bug with SurfaceImage on iOS.

The iPhoneOSGameView automatically binds the default frame buffer before
calling OnRender. This interacted poorly if draw calls were made to a
SurfaceImage during the last call to update(), because those calls would not be
flushed to that surface image's frame buffer until the next call to paint(),
but by that time iPhoneOSGameView would have re-bound the default frame buffer
out from under us.

Now we flush any pending draw calls at the end of update() which ensures that
SurfaceImage rendering goes to the SurfaceImage before we paint the next frame.
Use platform reference for logging.
When drawing a repeated subimage, we don't want to delegate to our parent.