Sleep, then deref futures, to ensure calls are successful
Add cassaforte deps to project.clj to enable uberjar build with checkout
Use :force-prepared-queries in connection
Remove workaround for increment-by
Use client/async and client/set-callbacks for dramatic increase in throughput

The success handler just prints a message when all the async calls for
the tranmission batch return successfully. It uses an `atom` as a
counter to track the number of calls returning successfully.

The failure handler prints a message. This lets us know when the cluster
is overwhelmed. We can increase the number of "meters" until we see a
failure message.

The recommendations for `async` and `set-callbacks` come from michaelklishin
of clojurewerks. Thanks!