fixing horrible awful terrible subtle dynamic scoping inheritence bug causing depressingly elusive exceptions to be thrown only at the worst of times