Add a new test for listening to a subview two levels deep.
Break down into smaller functions to improve readability
Some more refactoring
Update all other versions.