Use SQL instead of nslcd-protocol; begone with nshd
I no longer believe that nshd should be a daemon. I believe that it should be implemented as an nss module and as a pam module.
As much as I love Go, I don't believe that we should have to load the Go runtime into essentially every process; so writing the modules in Go is out. Maybe rust, but probably C.
OTOH, perhaps a standard SQL nss/pam module would be the way to go, and have it load the data into SQL.
I'm liking the idea of using SQL as an ACID cache for things for which the authoritative source is in git.