Do not keep alive unused menu items

If we did, we might have a huge list of unused objects that cannot
be collected (= leak!), especially with qt based indicators which
send us replaced items all the time
Add fix for opening nested submenus in 3.10/3.12

GNOME 3.10 introduced a regression which prevents nested submenus
from being opened. Patches have been sent upstream but not merged
yet. We need the functionality now, so we monkey-patch it.