Rev2 register with change function using recursion within objects.  Fun.