cli: add feature to cache docstrings for an api

cached verb dictionary stores the following as a list:
- name of the API
- params (list of args)
- docstring

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: move code, refactor and add docstring

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: add autocompletion and dynamic help doc

- autocompletions for help docs
- more verbose doc strings with __doc__ import from the module and list of
  required args and all args

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: use partition instead of split to parse through args

Use partition instead of splitting on whitespace. This is little robust, but
may still fail for parameters whose values have whitespaces such as names etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: make parsing robust using shlex

Parsing bug fixed using the simple lexical analysis library

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: pip install cloudmonkey works

Patch makes cloudmonkey installable and redistributable using source dist from
pypi under apache compliant license. Most visible issues have been solved and
cloudmonkey should work well with CloudStack 4.0 and master, also until APIs do
not change.

To install now:
    pip install cloudmonkey

or, if you have to:
    easy_install cloudmonkey

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: fix python sdist, add readline as installation requirement

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: fix argument parsing for set command, fixes unicode monkey char

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: fix autocompletion binding bug, make all params lowercase

- fix weird autocompletion bug which won't let you enter the letter b [0]
- make set params, api and secret key vars lowercase
- use partition to get strings for do_set
- while installing, check and only then add readline (requires gcc and can fail)
- show monkey prompt by default, let users change if needed

[0] http://superuser.com/questions/297527/cant-type-the-b-letter-in-python-shell-in-os-x

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
debian: Initial work to get the Debian packaging working again

Right now it isn't working yet, but this is the way it should start working
like the RPM package building is.

This commit is to clean up the rules file a bit and lay the groundwork for
the Debian packaging
CS-16718: cloudstack UI - Infrastructure page - zone detail - physical network - guest (configure) - Networks tab - create network dialog - network offering dropdown - when scope is account or project, show all network offerings including the ones that has SourceNat service.
CS-16741: Fix traffic type descriptions

-Update alt tags to specify what the name of each traffic type is

-Move traffic type alt descriptions to message.properties, for
 localization
Better placement of infrastructure totals and icons
CS-16737:When Registering templates  OK button is hidden completely by the helper text that is provided when user selects Featured
api: createStoragePool requires podId, clusterId

The CreateStoragePool API requires that podId, clusterId be passed or it fails.
Bug found in cli, which in turn got it from Marvin, which got it from commands.xml
which got from ApiXmlDocWriter.

Patch adds required field on podId, so it trickle downs to cli.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: fix keyerror in help doc handler

- Check and then print help docs
- Add verb configure

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
cli: add maven plugin to delete copied marvin folder on fresh install

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
adding .egg-info and eclipse prefs and settings to .gitignore
cli: autocomplete to assignment, adds syntactic sugar

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
Summary: remove the deps pom, this is no longer required for the maven
build.

Removed the deps pom and removed the deps profile from the main pom as
it was only there for the 4.0 build to support jar downloading for
ant.