Unregistering comms in Comm Manager

- [x] Deleting a comm now unregisters the comm (because creating it already registers it). 
      Unregistering the comm does not close it anymore (because registering the comm does not open it). 
- [x]  closing a widget should not remove it from the collection of widgets Widget.widgets. Closing, reopening a comm is independent of the lifetime of the widget. 
- [x] deleting a widget unregisters the widget from Widget.widgets. Decrements the ref count of the underlying comm. 

I don't think you should be able to reopen a comm, so I would set `self._comm = None` in self.close. Reconnecting a widget should require setting up a new comm.