unix: use cmdliner to make command-line parsing more polished

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
unix: improve the help text, add some examples

Signed-off-by: David Scott <dave.scott@eu.citrix.com>
unix: diagnose errors binding to the unix domain socket

If we have insufficient privileges to bind to a socket (e.g. if
we attempt to bind the system-wide default socket as non-root)
then tell the user how to fix the problem.

Signed-off-by: David Scott <dave.scott@eu.citrix.com>