The source code for the final product is available here.
The final product is a long step from the threading example. The controller is packed full of more features, there are more functions, and more design patterns have been applied.
Configuration
class