Credentials callback uses payload pointer.

When REMOTE-CALLBACKS classes are instantiated, a unique ID is
generated and it is stored in a weak hash table mapping ID ->
instance. This ID is then entered into the C data structure as the
payload slot during translation.

The Lisp side of the callbacks then uses the ID to look up the
REMOTE-CALLBACKS class to determine how the credentials should be
created.
Added Eric
Added simple clone test