I spent this past saturday learning twisted and going through the tutorial.
It took me some time to understand initially how twisted worked and that after reading the section on the reactor in the documentation, especially the phrase "You don't call Twisted, Twisted calls you." it finally made sense.
I made a prototype, simplified version of the lighting classes I had written prior and had been running manually via the shell. After confirming that it worked like I iterated and ported my lighting class to support being run via twisted.
The result was a simple lighting server that could be called over telnet, and could switch between the different lighting classes via telnet commands.
The next steps?