Fixes singular/plural naming inconsistencies in config classes

This changes some names of collection members and collection returning
getters to indicate the plural.

Closes #103
Naming in drop message was wrong
Small cosmetic changes
Fixed #166 Drop message deserialising makes strange things
Added link to documentation
Added getKeyIdentifier and getReadableKeyIdentifier to QblPublicKey
Added DropURL class
Removed checks and tests of drop url syntax form DropServer

These tests are specific to URL fully qualifying a drop instead
of a drop server.
Therefore, the checks and tests have been moved to new drop url class.
Adapted code to use DropURL class
added new method getKeyIdentifier() in class Identity
Class Contact:
* new field contactOwnerKeyId
* new protected constructor with parameter contactOwnerKeyId
* new getter for contactOwnerKeyId
* new setter for contactOwner
* modified constructor with parameter contactOwner
new class ContactTypeAdapter
added test for Contact de-/serialization
Added HMAC and GCM en- and decryption
added encryption functions with nonce parameter
ctr mode test vectors are working
gcm mode test vectors are working
removed unused imports
added handling of nonce=null and counter.length=0
finally added second nonce=null handling