The Elm interface to the code-editor custom element.
Inspired by Luke Westby's Elm Europe talk. The JavaScript custom element code is almost a verbatim copy.
This code won't do anything unless site/js/code-editor.js is loaded,
and its CodeMirror files from site/lib.
This is how you set the contents of the code editor.
This is how you receive changes to the contents of the code editor.
Create a code editor Html element.