reworked the privilege escalation works by changing the way target user info
is passed around, now we pass struct passwd* and struct group* instead of
strings wich allows much greater flexibility.
Also now us mimics the behavior of sudo and doas regarding the shell proxies:
- commands are started under a subshell, that shell is the user's
- if no command is specified just the shell is executed
commands are now run in a subshell, this is often needed for chains of commands
where it is not the main command to need the privilege but a subcommand does,
for example
us echo 30 > /sys/class/backlight/*/brightness
it is not echo that needs the elevated privilege but the redirection '>' does.
added two files,
TODO: things that still need to be taken care of that may be too long to
write in the source code
config.template: mockups of the config file