Introduce info/warning/danger to notification area

Add corresponding style.

Should fix #5984

Error when (auto)saving and things along should stand out in the
UI for the user to investigate the reason as soon as possible not to
loose work later.
fix missing semicolons
Merge pull request #6063 from Carreau/fix-5984

Introduce info/warning/danger to notification area
Automatically open a comm on creation of widgets

This will immediately create a model on the javascript side when a widget is created.  This means that, for example, a widget that only interacts with its model can work without "displaying" it.
Don't register comm with comm_manager if comm_manager is undefined
Check for null session in _publish_msg and _session)default
Make the widget comm attribute more straigtforward

Instead of automagically instantiating a comm when it is accessed, require a call to open().  This makes the comm attribute much less magical, and hopefully more understandable.
Allowing model_id to be set externally.
allow model id to be set externally on creation of a widget
not recreating a comm if widget_manager[_model_id]
deleting a comm now unregisters the comm. unrehistering the comm does not close it anymore
decoupling the comm lifetime from the widget lifetime
Using the get_comm function
merge