First pass at IOSGL20.

Most of the methods are unimplemented, so IOSGLContext doesn't extend
GL20Context and make use of it yet.

glTexImage2D works though! Although the passed buffer can not be direct.
This is annoyingly inconsistent with the other platforms. Is there an
efficient way to get an IntPtr to a direct Buffer?
Don't try to paint an image layer with null image.

I hemmed and hawed over whether to leave this triggering a null pointer
exception (which will crash your app on Android and iOS). In theory nothing
good can come of having an imageless ImageLayer in your scene graph. I could
refuse to add an ImageLayer with no image to the scene graph, but that could be
annoying if you know the image will get set later, before the layer is to be
rendered.

In any case, crashing your app with a useless stack trace (it doesn't tell you
where this image layer was added) is certainly not the right solution. So we'll
just silently acquiesce for the time being.
Fix small memory leak

I didn't observe the effects of this, but noticed it while reading the code. HashMap allows null
values so putting (k, null) does not reduce the size.
Consolidate mutable event state into a member reference

It's no longer necessary for each event processor to enumerate the mutable state after a call to
the localize methods, because events now inherit that.

This subsumes the boolean[] technique used in android and html, so those implementation subclasses
are no longer needed.

As a side effect, listeners must now go via event.flags() in order to call setPreventDefault,
instead of doing it directly on the event. This is a bit opaque but preferrable to the alternatives
I could think of.
Update input test

Use a toggle for whether the test prevents the default so that new mutable event state is easier
to add.

Get rid of images dragging since text labels are more economical and the images are too large.

Consolidate some of the logic for handling an event.
Stop rendering while paused.

Normally this isn't an issue, but if a client requests some additional time to
do post-pause processing then we need to avoid rendering while the game is
running in the background.
Mouse wheel events can be Position
Test mouse wheel events
Define the localize method abstractly in Position
Support an argument to interact methods of various flavors

Also add Position.dispatch method to do the deed.

This makes the event handling logic more clear, encapsulates the dispatch of position events,
establishes a pattern for defining layer interations and avoids the shim object allocations.
Add a platform option to propagate events to ancestor listeners

This is off by default for the momentm, so that games that don't need it won't get any
performance hit.
Give java real event flags

It makes sense to use noop for java, but it's just way easier to test the moving parts in java.
Add propagation to the test
Copyright that new file
Improve mousepointertouch test

The logger was really starting to bog down, so split the layout part into a separate paint pass.

Split up the event logging to have discrete ones scroll on top and a readout of the continuous
ones below.

And more detail on parent events.
Make a parent per listener type

Also clip and hit test appropriately so you can see what's going on more easily.
Provide a way to stop event propagation
Add propagation stoppage to test
Add touch box to test
Fix detection of text wrapping

My new test code assumes that the height of a layout will increase each time \n is appended. It
hung the app and I traced it down to this.