Support for UNIX sockets

Add a new config param, Server.FileSocket.  When Server.FileSocket
is set it will be used inplace of a network socket for the primary
server.  This uses a new parameter to ServerOption, m_useFileSocket
to toggle between treating the address as a socket path or a network
address.

To initialize a socket connection thrift expects the socket file to not
exist.  To support this the 'something nice' retry in startServer will
unlink an existing socket only if fuser claims it is unused.
Server.EvilShutdown enables unlinking the socket regardless of current
users.