WIP: nixos/gpsd-service: add support for hotplugging

FIXME
-----
coldplugging fails: gpsdctl tries to launch gpsd with system()
because gpsd isn't running. But that's not the way to start gpsd when
using systemd...
Even with socket based activation, gpsd.hotplug script is run before
systemd reaches socket.target, so gpsdctl still tries to launch gpsd
(and fails).

Hotplug support is enabled by leaving the services.gpsd.device option as
an empty string (this is the new default).

Hotplugging means you don't have to care what /dev/ttyUSBx number your
GPS comes up as; gpsd will monitor it no matter what.

If you don't want hotplugging you can put the gpsd device file in
services.gpsd.device, just like before.

I used the same .socket and .service systemd unit files as upstream,
which makes gpsd socket activated.