Usage returns a usage template string with the given sets of flags.
Each flag set is separated in a new flags section with the flagset name as
section title.
When used with cobra commands, the resulting template may be passed as a
parameter to command.SetUsageTemplate().