Major refactor and add support for timer values and temp exit conditions.  closes #2 closes #5