ctxsignal I wanted to treat signals similarly to how go contexts are used. Copied from github.com/influxdata/influxdb/kit