Add API tests for LifecycleEnvironment and GPGKey

Add several API tests which target the following URLs:

* `katello/api/v2/gpg_keys`
* `katello/api/v2/environments`

Many tests were already in place for GPG keys. However, there was no test for
issuing a GET to `katello/api/v2/gpg_keys`. This commit fixes that. In contrast,
there were no tests for lifecycle environments, and this commit adds a basic set
of HTTP POST and GET requests for lifecycle environments.
Will do. For others reading through this, consider how weird it is that these two calls are equivalent. First:

```python
response = client.get(
    'https://example.com/katello/api/v2/organizations/5/environments',
    auth=get_server_credentials(),
    verify=False,
)
response = client.get(
    'https://example.com/katello/api/v2/environments',
    auth=get_server_credentials(),
    verify=False,
    params={'organization: 5},
)
```

The above demonstrates that the API lacks orthogonality, which is bad. However, things then get ugly. Consider this code:

```python
response = client.get(
    'https://example.com/katello/api/v2/organizations/5/environments',
    auth=get_server_credentials(),
    verify=False,
    params={'organization: 6},
)
```

What will happen? Rather than allowing ourselves to make this mistake, it is best if:

* We do not provide arguments via a URL, when possible.
* We do provide arguments as JSON data, when possible.