unify formatting of fingerprints

This change introduces a common function to turn
a fingerprint into a human readable format.
display key fingerprints if offered by keyserver

This change tries to make use of complete key fingerprints if those are
offered by the consulted keyserver. If a keyserver returns the entire
fingerprint as a user id, it will be shown to the user searching the
database.
filter and verify keyserver responses

This changes introduces import functions that apply a constraining
filter to imported keys. These filters can verify the fingerprints of
the keys returned before importing them into the keyring, ensuring that
the keys fetched from the keyserver are in fact those selected by the
user beforehand.

It also prevents the accidental import of secret keys through key server
responses.