Package restructuring
We have accumulated classes and functions in a sort of hodge-podge manner, and I think we should do some reorganisation.
.
└── src/
├── components/*.jsx # "UI-only" React.js components that delegate as much as possible to code in lib/
├── contexts/*.jsx # React.js contexts, e.g. metadata and user prefs
├── lib/*.js # Vanilla JS classes and functions that do "all the work"
├── style/*.css # CSS snippets (if needed at all)
├── config/*.json # Build-time configuration
└── App.jsx
JSX code should only live in App.jsx, components/*.jsx and contexts/*.jsx. The code in lib/ should have no JSX and ideally no external dependencies.