Fix typo - block states now tracked correctly.
Fixed indentation
Added machine block, block sorting.

- Calculate dependencies of each block to ensure that globals are
declared before being used.
- Combined Block.run and Block._runNext. Simplified Block _run
functions.
- Pausing, Resuming, Stopping fixed.
- Clear block states when run button pressed.
Directory structure for experiments data.
controls_repeat_ext: reset DO on each cycle.
Prevent duplicate connect/disconnect events.

Emit only from inferior blocks.
Fixes

- Prevent trying to callback workspace._complete more than once.
- More descriptive (dis)connection error messages.
- Store input-statement events correctly.