tool: Fix error message for non-existing module

When user specify non existing module (e.g. foo)using the --module
option, he would get this confusing error:

    UsageError: error: argument --module: invalid choice: foo (choose from ['foo'])

While the availabe modules are certificates, libvirt, and sanlock.

Now the error display the available modules, sorted, and formatted in a
user friendly way, instead of as Python list:

    UsageError: error: argument --module: invalid choice: foo
    (available: certificates, libvirt, sanlock)

The relevant test use now real names, so errors look like real errors,
which help to format them properly.

Change-Id: Ib794b4cb0dcedbbd5b5bb4bb4396860e5edd8710
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1127877
Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/31742
Reviewed-by: mooli tayer <mtayer@redhat.com>
Reviewed-by: Dan Kenigsberg <danken@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/32055
Reviewed-by: Yaniv Bronhaim <ybronhei@redhat.com>
Tested-by: mooli tayer <mtayer@redhat.com>