Make this part of the code at least look similar

First we assert that s != NULL.

Then we check if a != NULL, and return -1 if it is. That just makes no sense.

Change the check for a to also be an assertion, and make things at least look similar.
Support systemd initrd kill protection

systemd wants us to mark our argv[0] when we don't want to be killed.

Since I think that's a bit ugly, add an option so it's only done when
necessary.