Fixed chunked encoding processing to avoid buffer underflow bug
Removed BAPO.ExecService and CyclicBarrier use in CouchMetaDriver

Use of the same ExecutorService in both CouchDriver and CouchMetaDriver (where
CouchDriver calls CouchMetaDriver) meant that it was possible to deadlock when
incoming work was greater than half the fixed threadpool size. Removing use
of that executor in CouchMetaDriver is possible by replacing CyclicBarrier
(where await() blocks) with Phaser (where arrive() does not block).

This patch also includes some additional comments for the .. less initiated to
see what exactly CMD is trying to do for some requests.

Remaining issue: Chunked encoding work is being done in the One True Thread,
where it should be in the outer call (i.e. future wrapped by CouchDriver).