properly hooking to sig events