Fixed issue where 'source p4_vars' hangs if load_checkpoint.sh is running.
Added new semaphore file, $P4ROOT/P4ROOT_not_usable.txt. This is used in
a way similar to 'offline_db_usable.txt' in the offline_db, except that this
file only exists when the databases in P4ROOT are not usable. This is the
opposite of how offline_db_usable.txt works, because P4ROOT is expected to
be usable 99.9% fo the time. p4d_base will refuse to start p4d if this file
exists, protecting against possible operator errors (like trying to start
p4d when a checkpoint is still loading).
Added check_file_dne() function to verify_sdp.sh to confirm a named file does not exist.
Added checks in verify_sdp.sh that P4ROOT_not_usable.txt does not exist in P4ROOT
Modified switch_db_files() (called by refresh_P4ROOT_from_offline_db.sh) to properly
use the new P4ROOT_not_usable.txt safety file.
Fixed bugs in p4d_base that could cause p4d_init.log to be overwritten if error output
Removed call to 'backup_functions.sh' in p4d_base, as on balance it added more complexity