the way exceptions and halts are handled have been cleaned up a lot.