Interface changes to IdDNSServer.pas

To address some performance issues and logic errors, some interface changes needed to be made to the classes of the IdDNSServer.pas unit. The most important change is that many String fields/parameters have been changed to use TIdBytes now, to avoid unnecessary data conversions that were causing data loss in some situations. DNS queries are processed as TIdBytes internally anyway, so making the input fields use TIdBytes instead of String avoids those problems.