vdsm-tool: Add command name to args for command

Each command now receives its own copy of 'sys.argv'-like argument list,
starting with command name and all its arguments.

Added exception each command can throw in case wrong params were passed.
Exception handler for this exception prints the doc string for the
command.

Some command functions were split because they're called both from vdsm
code and vdsm-tool code, so the vdsm-tool expose goes to a wrapper
function first and ensures the parameters are there, then passes to the
actual function.

Change-Id: I831bde947f451805e086e25f1c0b9943b17e7bd8
Signed-off-by: Dima Kuznetsov <dkuznets@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/26575
Reviewed-by: Antoni Segura Puimedon <asegurap@redhat.com>
Reviewed-by: Yaniv Bronhaim <ybronhei@redhat.com>
Reviewed-by: Dan Kenigsberg <danken@redhat.com>