====== Processes ======

  * if you abtWait (a hack) on a semaphore or a delay, that process will wait after it spins up a new UI process.
  * a normal semaphore in the UI process will cause the UI process to wait.
  * AbtSemaphore is a class. the wait method is the same as abtWait on a Semaphore.
  * a critical block turns off async interrupts and processing switching