Split `react_to_box_to_box_collision` in several private methods

The method was too big.
Add class to handle the events