Reduce amount of work done when unpacking unprintable characters.

Instead of going through the fmt package, we can use append int,
which saves an allocation.

benchmark                                old ns/op     new ns/op     delta
BenchmarkUnpackDomainNameUnprintable     2147          506           -76.43%
Merge pull request #149 from DanielMorsing/unprintable

Reduce amount of work done when unpacking unprintable characters.
Apply 433ab7b5694fe9ac924eb29fe3fedfc3c05d9a84 here too

The same Sprintf was used here, so this can be optimized as well.

Thanks to @andrewtj for the ping.
Move tests and start update_test.go

Put the update tests in a seperate file.
And add testing
Add Test for dynamic unpack failure
Update test and gofmt
Rename rdlen to lenrd

More in sync with lenmsg.
Stop parsing when hitting rdlen

Stop parsing these records when we hit rdlen.
Fix tsig fudge factor

Excellent bug report from freb, about how this fails when a message
arrives in the past (because of clock skew).

Closes #153