Add code to write pidfile, and -i option to specify pid file.
Add -u option to specify the user. Do the uid flip here instead of in the perl wrapper, but only if root of course. Otherwise runs as the user that invoked the program-agent. Add mandatory -e option to speicfy the pid/eid to use in event tuple instead of the ipaddr, since in jails without their own IP address, using the ipaddr is broken (all jails see all program events). Add mandatory -a option to specify a list of object names, so that the agent will get just the events it should. There is a corresponding new tmcc command that specifies the list of program objects for the node (or vnode).