chg: changed how classes are extended