Make entity GPGKey a factory, and test it

The key to making GPGKey an entity was to provide a value for the key itself.
That done, things work out just fine.

There is one known issue with the updated tests. When fetching a GPG key from a
Foreman server, the server will return the key's organization ID like this:

    {'organization_id': N, ...}

Whereas this is what is expected:

    {'organization': N, ...}

This bears further investigation, as it may be a regression.