limit the network interfaces that the instance will use

If the `:openstack_network_name` is specified, the instance will have only be provisioned only with that interface.
Side fixes:
 - added a non-blocking `tcp_test` method to check if the ssh port is open before calling SSH.new which is blocking method 
 - override `wait_for_ssh method` to incorporate tcp_test 
 - now if in driver config there is a `:ssh_key` value specified it will be used instead of computed value or `:private_key_path`