Why not use the `signal` here, or an `NSValue` of the signal's pointer? This is a pretty weird pattern right now.