Address review comments #2

Test for `basestring` instead of `str` and `unicode`.

Clearer logging.

Don't explicitly convert `Subscription` to a `str` for logging.
Dropped `role` from `Subscription`

Removed `role` attribute from `Subscription` as it was providing no
real additional value.

All notifications are now sent **to** subscribers, and no longer copied.

Changed some `debug` logging to be `info`.