Hosts formatting

This pull request is nearly a complete rewrite of the hosts plugin to support the metadata formatting proposal described in doc/METADATA.ini and discussed in #118. Additionally it introduces a first proposal for a library (keymetaformatting) that encapsulates useful functions to create the comment meta keys.

 Although I could have spent even more time on this topic, I think it is time for a first review.
Okay, I can do that. But then we would also have to create a comment/#0 *whenever* there is *any* comment key. Is this intended?