node now generically implements comparing. renamed abstract classes.