Did not realize that Swift will not output the name of an enum, so using a rawValue to indicate the name of a Lifecycle.
Modified circular detection error message to be more clear.
Removed comment that didn't provide enough useful or clear information.