Publish signature

Less variance, more type inference
Removed unnecessary variance
Forgot to undo
Removed deprecated OnSubscribeFunc
Undo comments
Copied from master
Merge pull request #1433 from Applied-Duality/async

Take 3