Make meta (TCP) and data (UDP) socket configuration more flexible

This is a series of patches that allow configuring metaconnection (TCP) and data (UDP) sockets independently, and also allows disabling them.

It adds two new configuration options: `DataPort` and `DataBindToAddress`. The defaults should not not break existing configurations.

It also adds a new special value for `BindToAddress` and `DataBindToAddress` to disable binding.