Worker monitor caller to kill connection if caller dies

This is to ensure that caller doesn’t leave the connection in a bad
state and it is put back into the pool. For example connections with
open transactions should not be put back into the pool.

/cc @josevalim @devinus