nsd: add package and service version 4.0.3

What this patch does:

1. Add a package for NSD. An authoritative DNS server.

2. Add a service module for NixOS:
The service's options should completely cover all configuration options the native NSD config file provides and replaces NSD's pattern mechanism by the possibility of cascading zone configurations. The service will run in a minimal chrooted environment by default. All defined passwords & certificates won't be stored in the actual config file nor somewhere in the nix store. Distributed/VM builds work.

Where I need some help:
A thing I could not accomplish is to just enable the compile-time options which are needed by the service configuration. I have tried to overwrite the according nixpkgs.config options in line 696 of [1] but I guess this does not work because of the order packages are called. Other things I have tried like querying the service config from the NSD package file didn't work either. Maybe someone could point me into the right direction this would be neat for many other packages too.

[1]: nixos/modules/services/networking/nsd.nix