`std.socket.UnixAddress` now supports abstract addresses.

UNIX domain sockets are usually identified by pathnames. Linux offers a
non-portable extension to this scheme, known as abstract socket addresses,
which are independent of the filesystem. An abstract socket address starts with
a null byte (`'\0'`), e.g.:

---
auto addr = new UnixAddress("\0/tmp/dbus-OtHLWmCLPR");
---
