Speed up our integration test suite
Speed up our integration test suite

Other than compilation time, by far the slowest part of our test suite
is the quickcheck tests. These tests concurrently flood the database
with thousands of rapid connections, which run a single query and
immediately terminate. These tests are stateless, and there's no reason
they need an isolated connection. Database connections are not thread
safe, but we can at least get away with one per thread (this will
potentially end up leaking connections, but that's not a huge concern
here).

It is important that we don't establish a transaction for the new shared
connections though, since the quickcheck tests for text will usually
error at least once, and we don't want to poison the connection when
that occurs.

I actually eventually wanted to use a connection pool for the whole
suite, but after seeing the results of just this change, I don't think
we'll need to do that. After this change, the time it takes to run the
test suite has dropped from 45 seconds to 5 seconds.

sgrif/diesel,diesel-rs/diesel,diesel-rs/diesel,sgrif/diesel