This is probably a more correct way to do Event::Push
This is probably a more correct way to do Event::Push

* Create a local variable of type SDL_Event, add the passed in event to
  the appropriate unioned type, then push that variable since SDL makes
  a copy of the variable when you do an SDL_Push
* Additionally, UserEvent's need to have the type set (for sure) others
  may also need this.

losinggeneration/sdl4cpp,losinggeneration/sdl4cpp