restructure bootstrap code so checks on data are only performed once - potentially as a separate function combining run_psm and boot_psm functionality into a single call