Allow local mode to find other ports if 8889 is taken

Also allows you to pass ranges for port: --chef-zero-port=9900-10000,20000-21000
Might be worth encapsulating this pattern so you do (e.g.,)

```ruby
Chef::LocalMode.with_local_server do
  # do some things
end
```

And `with_local_server` does:

```ruby
def with_local_server
  setup_server_connectivity
  yield
ensure
  destroy_server_connectivity
end
```