Anyway, onto more coding...
I've found that since having worked on bigger python projects, smaller scripts are far quicker to write having become far more familiar with the code. I've always found myself writing little mini scripts for things like enabling/disabling Subsurf modifiers for all objects in a scene, so for my current project I decided to create a little toolset that I can eventually develop and use across all my projects.
Currently all it does is the aforementioned Subsurf on and off along with controlling the Shrinkwrap modifier in a similar way. This is quite specific to the project I'm doing where it's really useful to control just these modifiers, but I'd hope in the future to be able to dynamically search the scene for all modifiers so they can all be controlled in this manner for more general projects.
Another cool thing I found was the ability to have an operator set a custom property when it runs. So I can use the same operator to make both the modifiers visible and invisible. On line 7 you can see I define a new property within the operator. To make sure I can access it I pass 'self' and 'context' into both the execute function and the function that has my main code on lines 9 and 10. It's with 'self' that you access the property, so I haven't yet experimented if 'context' is actually needed:
Anyway, have to actually do some work now instead of just writing about it. Part 3 of the Slider Puzzle tutorial is out on Tuesday.
Ps. I hope to have proper embedded code working soon.