daemon: Track local users outside of fgetpwent generator
Right now we assume all local users are in /etc/shadow. This mostly right, but there may be cases where an admin wants a user to be treated as local even though they don't have a password set there.
As a first step toward supporting that end goal, this commit changes the code to track local users in a hash table allocated outside of the generator function. This way the table can be used from more than one generator.
A future commit will change the cache file generator to populate the local users hash table as well.