Add www if DNS fails -- not pretty code :(

This fixes specific cases such as navy.mil and nasa.gov

The reflect package was vital to work out what error type was being
thrown back (url.Error => net.OpError => net.DNSError)