Make sandbox directory on demand

Previously, the component sandbox directory was created aggressively
each time a Droplet was instantiated.  This caused issues because it
would happen during the detect phase and corrupt the file system for
the compile phase.  This change removes the aggressive creation and
instead makes the directory the first time that the sandbox is
requested by a component.

[#62947962]
Tidy requires

When testing the previous change it was noticed that the require
statements in a number of components were in incorrect.  This change
tidies them up a bit.

[#62947962]
Merge 62947962-lazy-sandbox-creation to master

[Completes #62947962]