Use gudev to notice when new monitors are hotplugged, and when they are, update the configuration.
Invent our own API so we can build without Wayland headers.
The output_id is more of an opaque identifier for the monitor, based on its underlying ID from the windowing system. Since we also use the term "output_id" for the output's index, rename our use of the opaque cookie "output_id" to "winsys_id".