Add generic per-node state triggers to stated. You can put a trigger on any node on any state, in any specific mode, or without any mode restriction.
Add generic per-node state triggers to stated. You can put a trigger
on any node on any state, in any specific mode, or without any mode
restriction.

The imediate use of this is the FREENODE trigger. Now RELOADDONE adds
a FREENODE trigger on the ISUP state, if the node is in the reloading
expt. Then next time the node hits ISUP, it gets freed from the
reloading expt.

This fix solves the race where recently freed (and still rebooting)
nodes get grabbed by an expt and get rebooted in a way that may hoze
their FS's.

Also fixed a problem that was making it load the db twice on startup.

nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome,nmc-probe/emulab-nome