Add option to choose which host in a host array is chosen first

This patch allows a user to set a hostPreference option which correlates to the element in the host array. Used for example if you have primary and secondary servers.

Example usage:
```Javascript
var options = {
host: [host1, host2]
};
options.hostPreference = 0; //Use host1 as first choice
options.hostPreference = 1; //Use host2 as first choice
options.hostPreference = 2; //Use the last host in the array (host2) as first choice
```
If the preferred host is not available, the reconnect function will work as normal and move to the next host in the array.