Add per-experiment switch support.
Per-experiment switch stacks only come into being if the experiment actually has a switch allocated to it. If not, tbswap and snmpit should function unchanged. If there is a per-experiment stack that needs configuration, we first invoke normal snmpit in the normal place, but we use the new snmpit option `--skip-supplied' in combination with -S to skip the per-experiment stack. We then configure the per-experiment stack by itself with -S after os_setup has completed. There are some new functions in the db backend stuff to create, modify, and remove per-experiment switches. There is some new code in snmpit to do the --skip-supplied filtering. I also put all the -S, -i, and --skip-supplied stuff into portstats... because we also can't call portstats on a per-experiment switch in tbswap; otherwise it will hang and/or fail.
Showing with 464 additions and 21 deletions