add helper function to check an array of strings against a case-insensitve, "-" stripped string

Mostly to check an array of encodings, which are specified as Utf-8 or utf8
against "utf8"
chew your own dogfood

MetaData Links are defined as an array, not as a simple string.
retain the information whether MetaData_Link was specified as a single element or as an array

This requires a new type MetaDataLinkage and an UnMarshal method
improve url checking

* Rename CheckUrlContact to CheckUrl
* an empty url is meaningless; report it as such
* report if MetaData_Linkage is a single element (Info) or an array
more unit test