That is an excellent explanation, thanks!
I'm hearing that myApp inherits (instantiates?) from the stemapp directory. So when I added my custom widget to client/stemapp/widgets and created a new app, I was able to further customize the widget code in server/apps/myApp.
Once the widget looks good (if I ever stop tinkering with it) I'll copy its folder to client/stemapp/widgets to make it available to future apps.
I suppose, if I wanted to create a widget from scratch, I could copy the "Simple" widget folder with the bare minimum of code to stemapp, create a new app, and customize its code in server/apps/myApp.