parse_args: Improve handling of boolean arguments
parse_args: Improve handling of boolean arguments

First step to handle boolean configuration parameters from
mkosi.default files as well as from command line arguments. The
implementation supports multiple definitions of one argument. The
last value gets priority. Examples:
  --foo=yes --foo=no  --> args.foo=False
  --foo               --> args.foo=True
  --without-foo       --> args.foo=False
  --foo --without-foo --> args.foo=False

Purpose:
Let argparse import mkosi.default files in a future commit.

Make parse_boolean function case-insensitive.

Signed-off-by: Adrian Freihofer <f98937d5b22471d73907edaa0389fa3148b095de@gmail.com>

systemd/mkosi,systemd/mkosi