install.sh: allow webroot and/or cgiroot to be under basedir again
Previously webroot and/or cgiroot were always allowed to be underneath
basedir with the proviso that they would then be totally replaced along
with basedir.
However, the subsequent improvement to build basedir, cgiroot and webroot
in a temporary directory and then move them into place to minimize the
down time during an update broke that ability (and resulted in no cgiroot
or webroot existing after the update if they were located under basedir).
Fix this to explicitly allow webroot and cgiroot to again be located
under basedir if desired (with the same proviso). Doing so even further
reduces the down time window as then only the new basedir needs to be
moved into place.
At the same time put in place checks to make sure that cgiroot, webroot
and basedir have acceptable directory relationships to one another to
avoid ending up with a broken installation after install.sh runs.
Signed-off-by: Kyle J. McKay <mackyle@gmail.com>