Refactor
Merge smkcommon.signal.Signal with Callback
Merge in stuff from smkcommon