Clarify thought.
Ensure the thing really stops when done
Flesh this out a bit
Add functional test runner