Implement a feedback mechanism which allows the mta to "hold" envelopes
in the scheduler when it has too many tasks for a given relay, and
"release" them later.  It limits the number of "inflight" envelopes.
Add a global limit on the number of inflight envelopes. When the limit
is reached, the scheduler stops scheduling mta/mda envelopes until the
number of inflight envelopes drops.

While there, limit the mta envelope recall to 100 envelopes by default.
Merge branch 'master' into portable
bump dict key size to fix possible crash, this is a temporary solution
Merge branch 'master' into portable