Fix timeouts causing unhealthy conns

The previous behavior was to declare a connection unhealthy on a single query timeout. This PR changes things. A connection will be declared unhealthy only when a configurable number (10 by default) of queries timeout "successively" per connection. 

The reason for the change is gisted here: https://gist.github.com/lakshmi-kannan/3988d50aa6a5877ec9a5
Basically, the errors we see on a connection are always query timeouts. A query timeout does not necessarily translate to a bad connection.