nixos/network-interfaces: Implement the ability to add arbitrary routes

This is currently a work in progress as supporting default routes is probably not quite working. I'd appreciate testers when this code actually evaluates.
Maybe a something like 
PartOf = mapAttrsToList (i: _: "${i}-cfg.service") cfg.network.interfaces
on the network-setup.service