Adapt schema and code to allow NIS placeholder in passwd

The NIS placeholder in /etc/passwd "+::::::" doesn't have any ids so we
need to allow empty strings for the uid and gid.

Fixes #156