Print unknown record type with CLASSX and TYPEX

When printing unknown records it is best to print the entire thing
as unknown, instead of relying on the internal defined type. An
example A record, printed as an unknown one:
    miek.nl.      3600    CLASS1  TYPE1   \# 4 0a000101
Merge pull request #144 from andrewtj/atj-sig0

SIG(0)
Merge branch 'master' of github.com:miekg/dns
Cleanup the identical parsing functions.

Some records are copies from others: DNSKEY, CDNSKEY and KEY are
identical. DS, CDS and DLV are too and even RRSIG and SIG.

The parsing functions and the definition can all be used for parsing
all these identical types.
SIG0 misc - doc, bounds checking, refactor tests

* expand documentation a little and tweak comments
* add bounds checking in Verify()
* refactor tests