Replace optparse with argparse, use subcommands

Argparse supports subcommands, which makes it easier to group options
with their related action.

The actions list-applications, list-users, list-craches, add-app-user
and detail are now subcommands.

One downside is that python 2.7 argparse does not support aliases, so no
short versions of the above list are implemented. (previous short options -a,
-u, -c and -d does not have any new equivialent)
cli: Add commands manipulating versions

Added the following commands to the cli application:

* list-versions
* version-delete
* version-add
Add argparse as a dependency to setyp.py

Needed for python 2.6

Change-Id: I87df47c7b814024b1ec91d227f45762711de03c0
Bugfix: versions-add notify now works

Made the interface for AppVersionAdd accept booleans for downloadable
and notify and hide away the fact that these are coded as (1 or 2) and
(0 or 1) respectivly in the upstream API

Change-Id: Ia9e6509d1bff90688e348ca8f11c14714167a375