Handle stale subscriptions left over after disconnect
Catch the thallium::margo_exception throwin when an attempt is made to publish on an provider handle whose client end has been disconnected. It would be nice to check that the handle is still valid before using it, however, there doesn't been to be API that allows this.
This resolves the issue reported in #143. However, we probably want to revisit the disconnect and cleanup logic during the move away from thallium.