A Batching Queue or an Israeli Queue is a queue data structure that keeps elements in a group together.
It can be used in situations where we want to deal with all events of a type together.
Queue for the data type.
Groupable for the necessary trait.
Trait for defining types that can be grouped.