Check that only childen' applies are called

Forgetting to include children blocks in the self.children
list can potentially cause hard to spot bugs. That's why I think
it is reasonable to add the following description: if a brick
calls another brick's apply, the latter must be a child of the former.
The way I implement it is currently not thread-safe.