rethinking inheretence