Add nat monitor

First version of nat monitor. I've tested and it and it seems to work well. I'm mostly interested in design considerations, because it feels a bit clunky to me.