RFR -- Fix race condition that results in 'Keyspace not defined' error

This is a hard-to-reproduce race condition. However, based on the way we previously would, inside `ConnectionInPool.prototype.connect` would perform...

```javascript
  Connection.call(this, this._options);
  Connection.prototype.connect.call(this, function(err) {
```

...I am confident that this is why we were seeing the race condition. That code was executed even when a connection was already in the process of attempting to connect. The callback from that initial connection attempt could fire before the second call to connect finished. The second call to connect would mangle the state of the connection object and cause it to re-start the connect process.