Simplify tar upload pool concurrency control

Instead of relying on somewhat bizarre gevent.Group mechanics, just
maintain a counter (in the form of concurrency_burden).

This requires moving the uncharging mechanics out of _uncharge
(renamed _finish) into _wait (renamed from _get) to avoid race
conditions.

A couple of extra stress tests have been added.

The pre-patch of this code may well harbor a bug; the inspiration to
write this was encountering synchronization bugs (dangerous ones, that
could result in the silent passage of failed uploads) in an
implementation derived from this one for the purpose of parallel WAL
upload.
Draft patch