Made the SDL event queue dynamically allocated so we don't ever drop events.
Update the queued event wmmsg pointer to point to the queued event data.
Added an arbitrary limit to the number of queued events so it doesn't grow unbounded.