This is your basic "Legacy Code" refactoring. No tests, not much clarity. The advantage of this problem is that it's a microcosm of real-life problems, just not as large or involved.
Here are the current attempts:
Use this code base to run your own Legacy Code Retreat.
Did your Legacy Code Retreat go well? You could thank the original author with a flattr: