Reactive Slick

Here's the ongoing work on Reactive Slick.

/cc @cvogt for review later
Any Exception you get here will be a follow-on to the Exception that got you into this state. Unless we implement a more principled approach to exception handling and move away from just passing SQLExceptions to user code, we have to pick one exception to rethrow, and the first one is generally much more useful.