Used prettier with almost default settings to convert all indents
to spaces; unify quote symbols, spaces around brackets and the like.
Tweaked spaces between script blocks.
Divided the loading functions a little bit to make it clearer
how event listeners go (file loading is based on events).
Moved the invisible file input field definition to html and adjusted
the way events are triggered.
This is my best attempt at returning the form to a clean state,
so that incomplete entries don't mess with loaded ones.
Because form.reset() resets the sliders which enable/disable fields
without triggering related events, this includes explicitly setting
the disabled property.
Some go/no-go fields trigger events which show more related fields.
These get special handling in this commit.
Refactored getContentString() to allow different representations
(string, array, or object) in preparation for local saving.
This preserves getContentString() behaviour, while adding an easy
way to create an object to be saved.