* Reduced some SimpleTimer churn
* add hooks for per-peer choking in the outbound message queue - if/when a
peer reaches their cwin, no further messages will enter the 'active' pool
until there are more bytes available. other messages waiting (either later
on in the same priority queue, or in the queues for other priorities) may
take that slot.
* when we have a message acked, release the acked size to the congestion
window (duh), rather than waiting for the second to expire and refill the
capacity.
* send packets in a volley explicitly, waiting until we can allocate the full
cwin size for that message