Reactive Slick

Here's the ongoing work on Reactive Slick.

/cc @cvogt for review later
`scheduleSynchronousDatabaseAction` needs to operate at a lower level, so it can also be used for streams (where the block of code being executed does not directly complete the resulting Future). Future.apply could be used here but it would mean an extra Runnable and an unnecessary Future (when streaming) to be created.