Add 'on_demand' option to interact() so that long-running functions can be started only when explicitly requested
Add initial implementation of 2-handle range sliders for integers.
Add float implementation of range widget
Add an extended range abbreviation including a step value
Disable run button until the function finishes
Fix format problem when showing an error
Add some tests for the 4-5 int/float form in interact()
Add tests for the on_demand option
Adjust range style so that the vertical range marker is visible
Compiled changes to minified CSS
Remove 4-5 tuple forms from interact()
Fix validate logic if min/max are changed
Remove tests for 4-5 tuples, add tests for validate logic
Validate slider value, when limits change
The value of slider changes in frontend, and readout, but not in python obj.
Sending data back to python object after slider values change
A comma after `this.touch`
Remove $el_to_style from the widget javascript code; '' now defaults to this.$el

This seems to make it easiest to select the top-level element.  An alternative is to use special syntax for top-level elements, like in https://github.com/ipython/ipython/pull/6185

This will be followed up by other fixes that let the user set specific common properties of different elements.

This change also adds the .addBack() call, which means that nonempty selectors now apply to this.$el and its descendants, rather than just the descendants of this.$el.
Fixed pandoc version detection.
Fix js-tests for new default selector logic.