Pass in cluster to create Cassandra

Allow a cluster to be passed in when creating the Cassandra object. This allows users to specify a lot of other options (authentication, compression, etc) outside of the metrics-cassandra library. Move reconnect attempts into creation of cluster. I debated creating two static factory methods that could call the came constructor but went this route to maintain backwards compatibility. 
I wasn't sure what the retry was accomplishing as it's just as likely to fail on the second attempt. The problem with putting the retry in the connect method is that if you've passed a cluster in, there's insufficient information to rebuild the cluster. I thought a better solution was to retry when the class is responsible for building the cluster connection.