SVY-6559 Popup menu support

make sure that the src object is always set in an JSEvent (create a
RuntimeWebComponent on the fly)

a menu can have menu items again.

fixes for the init (don't add if no name/text, don't add onclick if no
callback is set)

do the destroy in a timeout so that it doesn't get destroyed when the
menu code is still calling many things on it.