send expired messages to self() one at a time
which simplifies the code a fair bit and also means we don't build up
a potentially huge intermediate data structure.
merge default into bug25327
refactor: less passing around of State in dl publishing
don't send expired messages to self() during bulk expiry
since they all end up in the mailbox, consuming memory
merge bug25372 into bug25327
merge default into bug25327
rename
don't send dead-lettered messages to self() during 'reject' handling
since they all end up in the mailbox, consuming memory
refactor: extract dead lettering commonality
merge bug25372 into bug25327
some more control flow abstraction
merge default into bug25327
Merged default into bug19375
Update dead-lettering due to queue length limit
Add queue max length equivalence condition