Add kqueue tracking to jails, inspired by how it's done with processes. EVFILT_JAIL takes a jail ID, and tracks with NOTE_JAIL_SET, NOTE_JAIL_ATTACH, NOTE_JAIL_REMOVE, and NOTE_JAIL_CHILD. It also uses the NOTE_TRACK mechanism that EVFILT_PROC uses, using the same result flags (NOTE_CHILD and NOTE_TRACKERR).
Watching JID 0 attaches to the current prison, allowing a process to track the creation of new jails as they are created. It also means a jailed process can tell when its own jail has been changed or added to, but that's neither useful nor dangerous.
This is a companion to the jail descriptor work in D43696, which had kqueue support for jail descriptors. The goal is to have kqueue for jails both by ID and by descriptor, using the same note flags.