Fixed typo in debug message for #process.
Added Dns::Server attribute to DNS REST router.

This is primarily intended to add clarity by reducing clutter. Moreover,
it also has the side effect of improving performance very slightly by
removing the overhead of calling #instance numerous times.
Implemented default DNS address/port/protocol values.

Even though it is unlikely that a user would remove these options from
the DNS config file, it is still good practice to have these safeguards
in place.
Added support for upstream nameservers.

Previously, upstream nameservers were configured by default even if the
config file did not specify them. Now upstream nameservers are only
used if they are specified. If none are given, then NXDOMAIN is
returned for unresolvable requests.
Moved Thread/EventMachine creation inside of #run.

This cleans up the API a bit by removing the requirement of placing #run
inside a Thread.new {EventMachine.next_tick {}} block. That should not
be the caller's responsibility.