Can be called on any node in the tree. Takes care of inserting the class into the correct location in the structure. Correctly handles adding classes in any arbitrary order (i.e. parent classes do not need to be added before child classes, etc.)