Ruby classes are broken, so I'm recreating them all in Javascript so that I can make it work with TDD. I've never done TDD before, so we'll see what happens.