update to run under 2012.02.1

Had to make a couple of changes... The use of fail must have changed, and it probably wasn't appropriate in the first place.  And the .new before the class definition was cute, but it seemed too cute to work.