Documentation more Go like
Merge pull request #36 from miekg/cleanups

Cleanups
Fix merge conflict
merge
Merge pull request #37 from miekg/doc

Documentation more Go like
Do not create buffer, write to the response stream directly
Some infrastructure on add a forwarder to skydns
Add a function that forwards queries

Add a ServerDNSForward function that forward DNS request, so
SkyDNS can serve as a DNS server (forwarder)
Add nameserver option to SkyDNS
Forward non-local queries to another nameserver.

Proof of concept. No fancy rtt selection yet, but basic functionality
is working.
Add TestDNSForward

This tests the new DNS forwarding functionality in SkyDNS, making
SkyDNS a transparant DNS proxy, next to the service discovery.
Change the port
Factor out the dnsPort/httpPort from the test

makes the code simpler and you don't have to check if you reused a
port or not. Starting point can even be made random so you can multiple
tests after each other. Most call now look like newTestServer("", "",
""), which indicates this can be further abstracted.
use var ( ) and add const for rrt banding
Forget RTT banding, just iterate over available nameserver.

Do the simple thing, just iterate. Do try another nameserver
if the first nameserver times out.
Round robin between multiple nameserver

Allow multiple nameserver to be given on the commmand line. Comma
seperated targets. Use the client.Id to round robin between the
different servers (if there).
Increment try on failed DNS forwards.
Add TODO and some whitespace cleanups
Add message about forwarders in the Init log line
Merge pull request #43 from miekg/forwarder

Make SkyDNS a forwarder