Script: support "dialog_options_repexec" callback

This adds support for "dialog_options_repexec" script callback that is called by engine each tick when custom dialog options are on screen.
Script: support "dialog_options_key_press" callback

This adds support for "dialog_options_key_press" script callback that is called by engine when a key was pressed while the custom dialog options are on screen.
Script API: implemented DialogOptionsRenderingInfo.Update()
Engine: invalidate custom dialog options when ActiveOptionID is set
Engine: disabled hard-coded mouse behavior for custom dialog options

This extends the possibilities for custom dialog option design for the new game versions:
* implicit option selection is disabled; the dialog option is no longer automatically run when player clicks mouse;
* "dialog_options_get_active" callback is deprecated and is run only for old games;
* "dialog_options_mouse_click" callback is run regardless of whether mouse was over particular option or not;
* options UI no longer unconditionally redrawn if the mouse button was pressed.
Script API: implemented DialogOptionsRenderingInfo.RunActiveOption()