Adding support for GPG keys via hammer cli.

Added support for GPG keys via Hammer CLI, including a factory method.
The following pieces of imformation are important to take into
consideration when writing the tests:

* Most, if not all, subcommands that are derived from Katello will
  require ``organization-id`` as an argument for some of its actions.
  For instance, ``hammer gpg list`` will *not* give you a list of all
  available gpg keys in the system, but only those keys for the provided
  ``organization-id``.
* Searching for Katello subcommands follows *ElasticSearch* syntax. So,
  instead of:

```bash
$ hammer gpg list --search name='foo'
```

You have to use:

```bash
$ hammer gpg list --search name:'foo'
```

* The following issues have been found and filed:
  * http://projects.theforeman.org/issues/4272
  * http://projects.theforeman.org/issues/4271
  * http://projects.theforeman.org/issues/4263
  * http://projects.theforeman.org/issues/4262
Added decorator for all CLI gpg key tests.

The gpg cli subcommand is currently affected by several issues, so they
will be skipped for the time being:

```bash
nosetests -c robottelo.properties tests/cli/test_gpgkey.py
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
----------------------------------------------------------------------
Ran 65 tests in 0.009s

OK (SKIP=65)
```