Made some big changes to how the ordering works. Not sure if everything is correct and if all the arrows have the right direction.
preliminary stubs for all the classes