def validate_child(child)
        raise InvalidParent.create(self, child) unless (!child.nil? && is_valid_child?(child))
        true
      end
def validate_child(child)
        raise InvalidParent.create(self, child) unless (!child.nil? && is_valid_child?(child))
        true
      end
determine whether the child is valid for this object; there are two
 layers to validation 1) provided by this method is_valid_parent? (and subclasses which override
 is_valid_parent?).
 @param [Taxonomite::Node] child the parent to validate
 @return [Boolean] whether validation was successful