send a custom user-agent header, as required by the dyndns2 standard
make webcheck ip detection url and parser configurable, update docs

also: reduce code duplication, move common code to base class
zoneedit seems to have switched to "plain" ip response, fix the parser, fixes #21
make the dns resolver configurable for v4 or v6 (or both), update docs

made the dns detector less special: it can now get configured as any other detector.

 this is most useful to give either family:INET or family:INET6 options, so dyndnsc will behave less confused as before (when it regularly updated IPs, just because of comparing 2 different kinds of IPs). there is also a hostname:host.name.to.query.com option, but it defaults to hostname from first updater, so one usually does not need to give it.

 refactored some code into a separate parse_detector_opts function to avoid duplication.
fix the tests
Merge pull request #20 from nsupdate-info/fix-useragent

send a custom user-agent header, as required by the dyndns2 standard, fixes #12
Merge pull request #24 from nsupdate-info/dns-af-support

make the dns resolver configurable for v4 or v6 (or both), update docs
Revert "make the dns resolver configurable for v4 or v6 (or both), update docs"
Merge pull request #25 from infothrill/revert-24-dns-af-support

Revert "make the dns resolver configurable for v4 or v6 (or both), updat...
Merge pull request #23 from nsupdate-info/webcheck-per-service

make webcheck ip detection url and parser configurable, update docs