add restricting code executable class
added more tests
make block private, regenerate block on code change
update CodeExecutable to return inputs and outputs, and pep8
recast return values to sets
updated execute method to return inputs and outputs
check for None
add class and its tests
remove need to initialize with code
Merge remote-tracking branch 'origin' into async_executing_context
replace assert statements with their functional equivalent
lock down access to _future
refactored class to implement a simple state machine
fix typo
remove unused code
check for trait change
Update state machine; fix deadlock; remove busy wait.
Renaming _running to _on_hold (and reversing the sense), at Ioannis's suggestion
In _wait, just wait until 'idle', else we could be waiting forever if execution is on hold.
Renaming and simplifying updates for readability.