Added propagation optimizations (events aren't propagated up the tree if not necessary), added propagation tests after attaching/detaching nodes, added TTL tests, added root pointer for each component in the hierarchy, all tests passed.