Description
Housekeeping currently could hog resources, for instance a single run could TTL a very large number of messages, starving other actors in the Broker or delay a shutdown of a Broker or VirtualHost. It should be changed so that it chunks work into reasonable chunks, rescheduling itself as necessary.
Housekeeping is also currently responsible for transaction timeout. Transaction timeout would be better implemented as a Ticker, which would awaken the connection if a idle/close timeout is due.