Simplify the code and make it more coherent (umask was the only context setting
not modified by setlogincontext() directly).
Preserve the current behavior of not changing the umask if none is specified in
the login class capabilities database, but without the superfluous umask()
dance. (The only exception to this is that a special value no user is likely to
input in the database now stands for no specification.)
If some user has a 'umask' override in its '.login_conf', the umask will still
be set twice as before (as is the case for all other context settings overriden
in '.login_conf').
This change makes it apparent that the value of LOGIN_DEFUMASK doesn't matter.
Thus, simply remove it.
Log a warning in case of an invalid umask specification.