Show loading indicator as sensor applet loads

IS [#56344548]
Update metadata name for chemical reactions plugin in converter

[#56525850]
Show live sensor value every 1s until started

IS [#54472534]
Gemfile: update guard
inquiry-experiment: double-pendulm
Provide default bond energies (dissociation energy in Classic MW)

[#56525850]
Pass more data for plugins, let them modify output state (e.g. PE, KE)

[#56525850]
Implement simplest bonds creation due to chemical reaction

[#56525850]

TODO FIXME: there is small energy conservation problem. Bond's
chemical energy and bond strength are taken into account, so it's
something different.

After investigation it seems like NextGen and Classic MW treat LJ
potential between bonded atoms differently (but I have to double-check
it).
Provide default color value when it isn't found due to idref issues

[#55563212]
wip: new pattern to handle model in sliderController
publish 'model' to global namespace in dev mode
propertySupport: setPropertyDescription,w/observer

IS [#54788892]
graphController: update yLabel from property desc

IS [#54788892]
grapher: always create elem for labels

This way they can be updated later.
Update sensor model's units-definition file

This is required because the sensor-definitions file had previously been updated to use slightly different measurementTypes (these values had to be aligned with what was expected by the Java applet code)

IS [#54788892]
Add humanized "measurementNames" to sensor defs

IS [#54788892]
Update graph label when sensor type changes

IS [#54788892]
Update numeric view units when sensor type changes

IS [#54788892]
Make sure to bind to updated model when loaded
playback controller: bind click handlers once

Unfortunately, fixing this now requires binding and unbinding in the modelLoadedCallback. But once the scripting API is set up not to not retain a permanent reference to a particular model instance, we have to remember to move this binding and unbinding to a more appropriate place.