make cli.main more lazy and cli.command less