How to do an update:

There are three repos involved:

* ModSim: contains shared resources between ModSimPy and ModSimMATLAB, mostly figures. Active branch is main.

* ModSimPy: Public repo with notebooks and examples without solutions. Active branch is master.

* ModSimPySolutions: Private repo where I do development and keep solutions.

The active directories are chapters and examples. There are lots of leftover bits I should clean up some day!

ModSimPySolutions is has actions on GitHub that run tests on push and once a month.

In ModSimPy, the chapters and examples directories have build.sh files that copy the notebooks from ModSimPySolutions, removes solutions, runs tests, and pushes updates to GitHub.

Not all notebooks can run without solutions, so those don't get tested.

The canonical location of modsim.py is in the top directory of ModSimPy. Everything else is a copy.
