I'm actually fine with throwing this one away, too. This is as much an exercise in excessive refactoring as it is in possibly ending up with cleaner/more readable code.