The factory function returns the pihole module and allows to pass the flake itself to refer to its outputs.