Convert to argparse, integrate children as an optional argument