Complete rework of the argument parser

Use subparsers to correctly isolate individual commands' options and get
a generally easier to understand usage help string.

One downside is that due to a bug in Python, it's not possible to have
subparsers be optional, so it's not possible to default to the 'status'
command when no command is specified.

The completion handler was also moved as a command of Maestro
('complete'), in part because of the aforementioned limitation.

Fixes #50.

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>