Test endpoint using the set SQL_LOGIN_TIMEOUT value

With this change when the entered endpoint is unreachable Tableau will
warn the user during connection setup instead of proceeding with an
incorrect endpoint and failing during query time. The timeout value set
by Tableau is used when testing the endpoint.
I created the ConnectionAttributes to hold all the stuff connection-related that we may need now/in the future, that's why I didn't create a primitive member for that in the first place. I am now getting rid of the pointer ...