SshConnection can now bind to a specific local host address and/or local port 

Adds ability to  bind to a specific local host address and/or local port  to SshConnection via options 'bindAddress' and 'bindPort', like OpenSSHs' '-b' parameter.
Binding to a specific local address or port may be necessary for compliance with network policies (e.g. routing or firewall settings).

Are we sure supplying `0.0.0.0` and `0` here is the same as not supplying anything? Looking at [the code](https://github.com/hierynomus/sshj/blob/master/src/main/java/net/schmizz/sshj/SocketClient.java#L47-L67), this seems to cause an additional call to [`Socket.bind`]9http://docs.oracle.com/javase/7/docs/api/java/net/Socket.html#bind\(java.net.SocketAddress\)), and there does not seem to be any indication that if you do **not** make that explicit call, it will bind to `0.0.0.0:0`.

Instead use something like the following here?
```
bindAddress = options.get(BIND_ADDRESS);
...
if (bindAddress == null) {
  client.connect(host, port);
} else {
  client.connect(host, port, InetAddress.getByName(bindAddress), bindPort);
}
```
?