When passing an object that responds to `identity` which is all of our
resources, we can pass the resource's identifier in to the API call to
make it easier to use without maintaining a list of classes.
Server's need to use the interface for the destination so they override
a new `mapping_identity` method which is picked up first.
Anything else (such as a String identifier) is passed directly to the
API request as before.
Little known fact is that the public version of the domain name of a
Brightbox cloud server is the `fqdn` prefixed with public.
This is now fixed here until it is fixed in the main API and the value
can be referenced directly from the response.