Allow different methods for ending execution (e.g. through an Enum) like FinalRet, Specific IP Addr, Specific Instruction, etc.