add --preserve-on-error global option

To ease debugging when something goes wrong during the setup/install process I have added a --preserve-on-error option which will skip the chroot teardown and volume umount/detach/destroy when an exception is detected.