When a component calls a mechanism, that could result in a new component being created, which in turn calls new mechanisms, which in turn could create more components, etc. This can, in theory, lead to compilation loops and infinite CRNs. We need to have some way to check for these loops and raise an error. This will be very helpful in debugging different mechanisms.