use xProperty 'time' for energy2d linegraphs

The graph can't handle the format produced by displayTime
in energy2d yet.
Lab help: let user sequence backward, add keyboard handlers

[#54519202]
Let author specify help tip for model container

[#54519202]
Simplify helptips serialization, they can't be undefined

as their default value is [].
Add margin to help tips, so they never touch interactive boundaries

[#54519202]
Add cookies.js module with cookies helper adapted from MDN pages

[#54519202]
Add helpOnLoad option, if it's true help mode will be shown automatically

[#54519202]

but only when user opens particular interactive for the first time.
Serialize 'helpOnLoad' interactive option

[#54519202]
Fix interactive checkbox (issues when onClick script is undefined)
import more folders from Java MW: public/part1

- public/part1/chembond
- public/part1/chemequil
- public/part1/chempot
- public/part1/conduction
- public/part1/conserve
- public/part1/distillation
- public/part1/elisa
- public/part1/emove
- public/part1/energy
- public/part1/fluorescence
- public/part1/heatflow
- public/part1/insulin
- public/part1/protein
- public/part1/redox
small edits to helpTip sample text
shorten/simplify some Energy2D HTB titles
Fix semantic layout stop algorithm condition

[#54749558]

The culprit was that we were expecting that layout fits interactive
container +/- 1px, but also that content width is always smaller than
container width. It was causing that this condition was never met,
even when content was 0.001px wider than container. Fix that
and tolerate 2px of difference (invisible for users anyway).
Do not calculate interactive content aspect ratio

[#54749558] [#54749766]

1. It's slow
2. It's imperfect, as it's in fact impossible to do it right
3. It should be specified by the interactive author in case of need
Fix "Tooltips and Helptips" interactive title
Implement 'disablable' mixin that can be used by interactive components

[#45184431]
Update interactive components metadata, add "disabled" option

[#45184431]
Use 'disablable' mixin in various interactive components

[#45184431]

+ extend Scripting API, add ".setComponentDisabled()" function.
Add new interactive - "Disabled Components"

[#45184431]
Update jshint and .jshintrc