Trying new message registration setup.

Message registration returns a disposable which you can use to
unregister.

Also, messaging system no longer holds a strong reference to handlers
and uses a weak reference.