added ClientConfig.connectionAttempts to provide an upper bound to conne...

...ction attempts.

fixes #1 

@DanSimon 
Maybe just combine these into an `Option[PollingDuration]`, with `None` meaning "don't try to reconnect", since it would be weird to provide a polling duration but set `autoReconnect` to false.