ons each state machine needs to run in its own
    thread, other applications are single-threaded and run all machines in
    the same thread</li>

    <li>For some applications a FIFO scheduler is perfect, others need
    priority- or EDF-schedulers</li>

    <li>For some applications the boost::thread library is just fine, others
    might want to use another threading library, yet other applications run
    on OS-less platforms where ISRs are the only mode of (apparently)
    concurrent execution</li>
  