Reactive Slick

Here's the ongoing work on Reactive Slick.

/cc @cvogt for review later
After some more thinking about how to implement this, I think there's a deeper problem here:

> Updating in batches is fine as long as you don't process `request` signals until after you have updated the batch, or am I missing something?

According to 3.17 any request() MUST fail if the pending count exceeds the maximum. If you do not check this immediately, you will not be able to fail in situations where the pending count at the end of the batch plus the new requested amount is OK even though it was not OK at the time the new request arrived. So you need exactly the kind of lockstep processing that you're trying to avoid with RS.