exposed n on on "once" in g.n where g is the wrapped handler. Also allows for n = 0 to not fire.