Autokill

- Adds two new fields to simulators:
 - **count_total** -- total count that simulator will reach before it stops counting
 - **reset_interval** -- time before it will reset. The simulator will not perform a reset if total_count has not been reached. A reset does **not** reset the current state of count (so if the simulator stopped counting at "5", it will begin counting again at "6" after a reset)
  - if **reset_interval** < 0, the simulator will never reset (will be stopped indefinitely)

**simulator_mixin.py**
- reformated simulators to use a mixin file