setup.sh - Make each step optional (but enabled by default)
The question of running "composer install", "npm install", etc., as part of
setup.sh is a bit curious:
* For most Civi developers and automated tasks tasks, they run
"git pull && setup.sh" once a day to get up-to-date. This
implies that automatic downloading ("composer install") is good.
* For a developer who's explicitly testing/changing dependencies,
it may be useful to reset the DB without re-downloading (because
re-downloading would trample their changes).
This patch takes each major step in setup.sh ("download dependencies", "run
gencode", "init DB") and allows them to be run separately.