Synchronize all access to the underlying PG connection

It's not thread-safe, and we need to safely issue queries from both the
owning thread and the reaper.
No need for #active? to wait around for the lock

If some other thread is using the connection right now, it's clearly
active.

This way, the reaper won't pointlessly get stuck waiting on some
long-running query to complete, just so it can confirm the connection's
still valid.