Add snapshot widget msg

...allows backend to send snapshot data to the frontend
Add block that allows loaded JS to be overriden easily
Added static widget manager
Moved bounded values code into its own function
Added static widget manager javascript
Added static widget template
Added CellExecutionEvents class
Decoupled Python Widget from Comm
Started implementing Notebook cell execution events