Enable widget instanciation from front-end.
Make Python push initial state.
Also added initial state push callback.
Fixed typo.
Rebase fixes.
Register the Widget target with the comm manager after construction.
Address @minrk 's review comments.