Refactor code to add subscribers to remote in `sig/add` and remove them in `sig/remove`
Rename some functions.