DNS un-unsignedint

In theory, it seemed a good idea to map certain fields in DNS as unsigned integers.  In practice, it made life difficult, as UnsignedIntegers are not auto-boxed, have different syntax for parsing from primitives, and serialize as complex types.  This pull request changes the type of dns fields back to `int`, and have `checkArgument` statements to ensure the values are unsigned.