core_signal: add gconnect()